Skip to content

sloretz/ros_oci_images

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ROS Open Container Initiative Images

Open Container Initiative images for ROS!

Are you looking for Docker images? You're in the right spot! OCI images are Docker images. Here's how Docker and OCI relate.

Quick Start

New to containers? Start with Docker. It has the most documentation and tutorials.

docker run --rm=true -ti ghcr.io/sloretz/ros:rolling-desktop ros2 --help

About the images

All images are updated once per week at midnight GMT on Sunday. Additionally each ROS distro's images are updated automatically after a sync.

The ROS 2 distros have an image for each variant defined by REP 2001. The ROS 1 distro ROS Noetic has an image for each metapackage defined by REP 142. All images are based on Ubuntu.

Image amd64 arm v7 arm64 v8 Full Image Name
ROS Humble
ros-core ghcr.io/sloretz/ros:humble-ros-core
ros-base ghcr.io/sloretz/ros:humble-ros-base
desktop ghcr.io/sloretz/ros:humble-desktop
perception ghcr.io/sloretz/ros:humble-perception
simulation ghcr.io/sloretz/ros:humble-simulation
desktop-full ghcr.io/sloretz/ros:humble-desktop-full
ROS Iron
ros-core ghcr.io/sloretz/ros:iron-ros-core
ros-base ghcr.io/sloretz/ros:iron-ros-base
desktop ghcr.io/sloretz/ros:iron-desktop
perception ghcr.io/sloretz/ros:iron-perception
simulation ghcr.io/sloretz/ros:iron-simulation
desktop-full ghcr.io/sloretz/ros:iron-desktop-full
ROS Jazzy
ros-core ghcr.io/sloretz/ros:jazzy-ros-core
ros-base ghcr.io/sloretz/ros:jazzy-ros-base
desktop ghcr.io/sloretz/ros:jazzy-desktop
perception ghcr.io/sloretz/ros:jazzy-perception
simulation ghcr.io/sloretz/ros:jazzy-simulation
desktop-full ghcr.io/sloretz/ros:jazzy-desktop-full
ROS Rolling
ros-core ghcr.io/sloretz/ros:rolling-ros-core
ros-base ghcr.io/sloretz/ros:rolling-ros-base
desktop ghcr.io/sloretz/ros:rolling-desktop
perception ghcr.io/sloretz/ros:rolling-perception
simulation ghcr.io/sloretz/ros:rolling-simulation
desktop-full ghcr.io/sloretz/ros:rolling-desktop-full
ROS Noetic
ros-core ghcr.io/sloretz/ros:noetic-ros-core
ros-base ghcr.io/sloretz/ros:noetic-ros-base
desktop ghcr.io/sloretz/ros:noetic-desktop
perception ghcr.io/sloretz/ros:noetic-perception
simulators ghcr.io/sloretz/ros:noetic-simulators
simulators-osrf ghcr.io/sloretz/ros:noetic-simulators-osrf
desktop-full ghcr.io/sloretz/ros:noetic-desktop-full
robot ghcr.io/sloretz/ros:noetic-robot
viz ghcr.io/sloretz/ros:noetic-viz

simulators-osrf image contains the same packages as simulators, but updated to versions provided by packages.osrfoundation.org (PPA suggested by Gazebo).

Using with other OCI compatible tools

Used containers for a while? Other tools might be better fit your use case.

Apptainer

apptainer run docker://ghcr.io/sloretz/ros:rolling-desktop ros2 --help

Distrobox (Requires Docker or Podman to be installed)

distrobox create --image ghcr.io/sloretz/ros:rolling-desktop --name rolling-desktop
distrobox enter rolling-desktop
. /opt/ros/rolling/setup.bash
ros2 --help

nerdctl using rootless mode.

nerdctl run --rm=true -ti ghcr.io/sloretz/ros:rolling-desktop ros2 --help

Podman

podman run --rm=true -ti ghcr.io/sloretz/ros:rolling-desktop ros2 --help

Rocker (requires Docker to be installed)

rocker ghcr.io/sloretz/ros:rolling-desktop ros2 -- --help

Sarus

sarus pull ghcr.io/sloretz/ros:rolling-desktop
sarus run -t ghcr.io/sloretz/ros:rolling-desktop ros2 --help

SingularityCE

singularity run docker://ghcr.io/sloretz/ros:rolling-desktop ros2 --help

Toolbox (Requires Podman to be installed)

toolbox create --image ghcr.io/sloretz/ros:rolling-desktop rolling-desktop
toolbox enter rolling-desktop
. /opt/ros/rolling/setup.bash
ros2 --help

x11docker (Requires Podman, Docker, or nerdctl to be installed)

# Option 1: using podman
podman pull ghcr.io/sloretz/ros:rolling-desktop
# Option 2: using docker
docker pull ghcr.io/sloretz/ros:rolling-desktop
# Option 3: using nerdctl
nerdctl pull ghcr.io/sloretz/ros:rolling-desktop

# After pulling, run this to use RViz with gpu acceleration
x11docker --gpu ghcr.io/sloretz/ros:rolling-desktop rviz2

Comparison to osrf/docker_images

This repo is a spiritual fork of the official OSRF docker images. The image definitions here were copied and modified from them. The goal of this repo is to make updated images available sooner. This has been a longstanding issue with the official OSRF Docker images that can't easily be solved due to both Docker Official Library policies and how the ROS buildfarm versions packages on different architectures.