{"id":16162455,"url":"https://github.com/sunsided/ros-gazebo-gpu-docker","last_synced_at":"2025-06-17T03:03:22.590Z","repository":{"id":141992965,"uuid":"265893213","full_name":"sunsided/ros-gazebo-gpu-docker","owner":"sunsided","description":"Dockerized ROS + Gazebo with GPU support","archived":false,"fork":false,"pushed_at":"2020-06-09T07:42:25.000Z","size":32,"stargazers_count":22,"open_issues_count":0,"forks_count":6,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-17T03:03:16.692Z","etag":null,"topics":["docker","gazebo","gazebo7","gpu","nvidia","nvidia-docker","ros","ros-kinetic"],"latest_commit_sha":null,"homepage":"","language":"Dockerfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sunsided.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-21T16:06:51.000Z","updated_at":"2024-11-25T15:47:23.000Z","dependencies_parsed_at":null,"dependency_job_id":"7a894c1a-eebd-4eb9-ace2-e2aa33813262","html_url":"https://github.com/sunsided/ros-gazebo-gpu-docker","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/sunsided/ros-gazebo-gpu-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Fros-gazebo-gpu-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Fros-gazebo-gpu-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Fros-gazebo-gpu-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Fros-gazebo-gpu-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sunsided","download_url":"https://codeload.github.com/sunsided/ros-gazebo-gpu-docker/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sunsided%2Fros-gazebo-gpu-docker/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260281568,"owners_count":22985626,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","gazebo","gazebo7","gpu","nvidia","nvidia-docker","ros","ros-kinetic"],"created_at":"2024-10-10T02:30:14.163Z","updated_at":"2025-06-17T03:03:22.554Z","avatar_url":"https://github.com/sunsided.png","language":"Dockerfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ROS Kinetic Desktop Full + NVIDIA in Docker\n\n**TL;DR:** On Linux, to drop into an X11 enabled container created from [sunside/ros-gazebo-gpu:kinetic-nvidia](https://hub.docker.com/repository/docker/sunside/ros-gazebo-gpu),\nrun\n\n```bash\n./run-nvidia.sh\n```\n\nYou'll be user `ros` with password `ros` and `sudo` powers. The current directory will be mounted to `/workspace` in the container.\n\n---\n\nI am aware that ROS Kinetic is somewhat outdated.\nHowever, for some projects I did I had the constraint to\nwork with Kinetic and Gazebo 7 rather than any newer\nversion. Since I was using Ubuntu 20.04 at the time\n(and ROS Noetic wasn't even released), I created this\nrepo to help me and possibly others out. It is, after\nall, just a digest of information that can also\nbe found all around the web.\n\n## Sourced documentation\n\n- [Ubuntu install of ROS Kinetic](http://wiki.ros.org/kinetic/Installation/Ubuntu)\n- [Hardware Acceleration](http://wiki.ros.org/docker/Tutorials/Hardware%20Acceleration)\n- [NVIDIA Container Toolkit](https://github.com/NVIDIA/nvidia-docker)\n- [Install Gazebo using Ubuntu Packages](http://gazebosim.org/tutorials?cat=install\u0026tut=install_ubuntu\u0026ver=7.0)\n- [Gazebo Models](https://github.com/osrf/gazebo_models) are available\n on Git\n- [nvidia/cudagl](https://hub.docker.com/r/nvidia/cudagl/tags?page=1\u0026name=16.04) Docker image\n\n## Problems to steer around\n\nA core issues that arise when just following the official documentation(s) are these:\n\n- The `nvidia-docker2` runtime is now deprecated and has been replaced with `nvidia-container-toolkit`; as a result,\n`--runtime=\"nvidia\"` is not a valid option anymore\nand `--gpus \"all\"` (or similar) must be used instead.\n- The visualization tools (such as Gazebo and RViz) require OpenGL to work, which isn't available in the offical ROS Docker images (see [here](https://answers.ros.org/question/322029/nvidia-driver-problem-in-ubuntu-1804-host-with-a-ros-kinetic-desktop-full-docker/) and [here](https://stackoverflow.com/questions/44166269/libgl-error-failed-to-load-driver-swrast-in-docker-container)).\n- Gazebo 7.0 is provided with the official ROS Docker image, but is outdated (see [here](https://answers.gazebosim.org/question/6347/downloading-models-fails/) and [here](https://answers.gazebosim.org/question/18014/gazebo-7-ambulance-model-and-other-invalid-mesh-filename-extension-crash/)). The Docker image comes with Gazebo 7.x from Gazebosim's package sources.\n- X11 authentication may fail due to a subtle bug when passing arguments along.\n\n## Build with GPU support\n\nFor NVIDIA GPU support, go to the [docker/nvidia](docker/nvidia)\ndirectory and follow the instructions [there](docker/nvidia/README.md).\n\nIf in a hurry, just run\n\n```bash\ndocker/nvidia/build.sh\n```\n\nThis should provide you with the image [`sunside/ros-gazebo-gpu:kinetic-nvidia`](https://hub.docker.com/repository/docker/sunside/ros-gazebo-gpu).\n\nStart the container with\n\n```bash\n./run-nvidia.sh\n```\n\nand you're ready to go. Note that this will create a container named `ros`, so running the command twice won't work. You can,\nhowever, `docker exec -it ros bash` into the running container as often as you like.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunsided%2Fros-gazebo-gpu-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsunsided%2Fros-gazebo-gpu-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsunsided%2Fros-gazebo-gpu-docker/lists"}