Support for old docker versions

This commit is contained in:
yenon 2022-09-05 10:49:33 +02:00
parent a0bce838f2
commit ca9950c5af
4 changed files with 27 additions and 13 deletions

View File

@ -1,12 +1,11 @@
ARG ROS=humble
FROM osrf/ros:${ROS}-desktop
RUN apt-get update -y
RUN apt-get install -y ros-galactic-ros-ign-gazebo
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y xserver-xorg-video-all libgl1-mesa-glx libgl1-mesa-dri libglvnd0 libgl1 libglx0 libegl1 libxext6 libx11-6
RUN apt-get install -y libvulkan1 mesa-vulkan-drivers vulkan-utils mesa-utils
ARG UID=1000
RUN apt-get update && apt-get install -y ros-galactic-ros-ign-gazebo
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
RUN apt-get update && apt-get install -y libvulkan1 mesa-vulkan-drivers vulkan-utils mesa-utils
ARG GID=1000
run groupadd -f -g $GID ros
ARG UID=1000
RUN groupadd -f -g $GID ros
RUN useradd -u $UID -g $GID -m ros
RUN usermod -aG video ros
RUN usermod -aG render ros

9
build_ros/entrypoint.sh Executable file
View File

@ -0,0 +1,9 @@
#!/bin/bash
groupadd -f -g $GID ros
useradd -u $UID -g $GID -m ros
usermod -aG video ros
usermod -aG render ros
chown -R $UID:$GID /home/ros
exec su ros -c "/ros_entrypoint.sh $@"

View File

@ -7,16 +7,19 @@ services:
context: ./build_ros
args:
ROS: galactic #Desired ROS version
user: 1000:1000 #Fill in your id's here. (UID:GUI)
UID: ${U_ID}
GID: ${G_ID}
volumes:
- /tmp/.X11-unix:/tmp/.X11-unix:rw
- ./ros:/home/ros
- ./home:/home/ros
devices:
- /dev/dri:/dev/dri
environment:
- DISPLAY=$DISPLAY
- XAUTHORITY=$XAUTHORITY
entrypoint: /bin/bash
- U_ID=${U_ID}
- G_ID=${G_ID}
user: ${U_ID}:${G_ID}
stdin_open: true
tty: true
#group_add:

View File

@ -1,7 +1,10 @@
#!/bin/bash
sudo docker-compose build
sudo docker-compose up -d
mkdir $(dirname "$0")/home
sudo docker-compose down
sudo U_ID="$(id -u)" G_ID="$(id -g)" docker-compose build
sudo U_ID="$(id -u)" G_ID="$(id -g)" docker-compose up -d
up_result=$(sudo docker-compose ps -q)