ROS/build_ros/Dockerfile

27 lines
1.1 KiB
Docker
Executable File

ARG ROS=humble
FROM osrf/ros:${ROS}-desktop
#SSH (First to hopefully keep keys, even on modification.)
RUN apt-get update && apt-get install -y openssh-server && rm -rf /var/lib/apt/lists/*
RUN mkdir /run/sshd
RUN ssh-keygen -A
#OpenGL
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y xserver-xorg-video-all libgl1-mesa-glx libgl1-mesa-dri libglvnd0 libgl1 libglx0 libegl1 libxext6 libx11-6 && rm -rf /var/lib/apt/lists/*
#Vulkan
RUN apt-get update && apt-get install -y libvulkan1 mesa-vulkan-drivers vulkan-utils mesa-utils && rm -rf /var/lib/apt/lists/*
#Utils
RUN apt-get update && apt-get install -y git ninja-build git bash-completion && rm -rf /var/lib/apt/lists/*
#Rosdeps
RUN apt-get update && apt-get install -y git ros-galactic-ament-cmake ros-galactic-moveit ros-galactic-behaviortree-cpp-v3 ros-galactic-ros-ign-gazebo && rm -rf /var/lib/apt/lists/*
ARG G_ID=1000
ARG U_ID=1000
RUN groupadd -f -g ${G_ID} ros
RUN useradd -u ${U_ID} -g ${G_ID} -m ros
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
CMD ["/usr/bin/bash", "-c", "/entrypoint.sh", "${ROS_NAME}"]