ROS/build_ros/Dockerfile
2023-02-16 17:34:54 +01:00

28 lines
1.2 KiB
Docker
Executable File

ARG ROS=humble
FROM osrf/ros:${ROS}-desktop-full
#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/*
#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-tools mesa-utils && rm -rf /var/lib/apt/lists/*
#Utils
RUN apt-get update && apt-get install -y gdb clang-format git ninja-build git bash-completion clangd ccls && rm -rf /var/lib/apt/lists/*
#Rosdeps
RUN apt-get update && apt-get install -y ros-humble-ament-cmake ros-humble-moveit ros-humble-behaviortree-cpp-v3 ros-humble-gazebo-ros ros-humble-ros-gz-sim ros-humble-ros2-control ros-humble-gazebo-ros2-control && rm -rf /var/lib/apt/lists/*
RUN mkdir /run/sshd
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}"]