CarND-Capstone is the last project of the Udacity self-driving car NanoDegree. It's composed of a simulator (running on your local machine) and the brain of the car (running in this container, including compilation and debugging).
The container connects to the port 4567 of the host machine, that's the port the simulator listens on.
See https://github.com/udacity/CarND-Capstone
Linux and MacOS are supported. ( CUDA only tested on Linux so far)
Install nvidia-docker from here: https://github.com/NVIDIA/nvidia-docker
I recommend to install Docker for MacOS instead of managing your own VM (port forwarding and file sharing is automated for you).
1.Go to your project directory
cd /home/user/capstone_source
2.Download the script into your project
wget https://raw.githubusercontent.com/SiliconCar/CarND-Capstone-Docker/master/utils/run_cuda.sh && chmod u+x run_cuda.sh
1.Start the script
./run_cuda.sh
2.You're now within the container and the current directory contains the source code of your project. You can compile and run your project:
cd ros
catkin_make
source devel/setup.sh
roslaunch launch/styx.launch
Here are some of the cool aliases that are defined in the container
udacity_make #Compiles the project
udacity_run #Executes the project
Simply open a new terminal and run the script again, if your container is currently running it will attach to it. Therefore, you can have one terminal session to run the project and another one to query ROS's topic or what have you.