Cloud Desktop Container uses a custom docker image. The Dockerfile
is located here.
There are 3 main components in the container image,
VNC server paired with a NoVNC server
VSCode server
Tailscale client
Catkin Workspace: /my_ros_data/catkin_ws
Ports:
novnc
80
vnc
5900
vscode
8080
The current container image is structured this way:
cosi119/tb3-ros
Installs ROS melodic and ROS packages
Installs custom packages used in class, like prrexamples
cosi119/ubuntu-desktop-lxde-vnc
Provides a Ubuntu image with novnc and lxde preconfigured.
Provides a CUDA enabled variant (image with -cuda
tag suffix)
Each of the components are managed by a process control system called supervisord
. Supervisor is responsible for spawning and restarting these components. For detailed configs, see supervisord.conf.
Modify the supervisord.conf
under tb3-ros/tb3-ros/files/supervisor/supervisord.conf
.
As of version 2.1.1
,
turtlebot3_msgs
turtlebot3
turtlebot3_simulations
https://github.com/campusrover/prrexamples
https://github.com/campusrover/gpg_bran4
To add a package to the default catkin workspace, modify the Dockerfile
under tb3-ros/tb3-ros/Dockerfile
: