Gazbo, ROS and MATLAB allow a workflow to simulate robots (dynamics, environment etc.) while easily developing controllers in MATLAB. Communication between the two is done by ROS with the ROS Toolbox. Since it's a hardware-hungry environment, VMs are not a very good solution, and annoying to work with.
Most university students and research staff have access to cloud-computing (clusters/supercomputers). In my case it runs Linux Nitrogen. Users are not granted sudo-rights, obviously. Tutorials are usually expecting Ubuntu.
Setup of the workflow environment is not trivial, and I would rather have students (and me ;-)) work on the robotics control problem and not the setup.
Singularity Docker is prefered by the cluster's administration.
I think such a docker should work on Winows10 Pro as well, since it's shipped with a built-in linux kernel (WLS)
There exist an answer on how to run MATLAB in a docker already. It seems activation/licences are a problem. In a perfect world, the docker would ask(?) the user about the licence when e.g. starting. As a supervisor for students, I'd have them run the docker with their license and not mine.