From 19aecee4c435c1948c42b82448e1bc92ba4d4875 Mon Sep 17 00:00:00 2001 From: Isse Date: Mon, 27 Jan 2025 17:21:34 +0100 Subject: [PATCH] Merged ros dockerfiles. --- extras/jetson/README.md | 4 +-- extras/jetson/dockerfile_ros | 60 ------------------------------------ extras/ros/dockerfile | 6 ++-- 3 files changed, 5 insertions(+), 65 deletions(-) delete mode 100644 extras/jetson/dockerfile_ros diff --git a/extras/jetson/README.md b/extras/jetson/README.md index 2a38870..971e0b4 100644 --- a/extras/jetson/README.md +++ b/extras/jetson/README.md @@ -116,13 +116,13 @@ Tested with a _Jetson AGX Orin Developer Kit_ module. - Build docker container: ```bash - docker build --progress=plain -f extras/jetson/dockerfile_ros -t rapidposetriangulation_ros . + docker build --progress=plain -f extras/ros/dockerfile -t rapidposetriangulation_ros . ./run_container.sh ``` - Run and test: ```bash - xhost +; docker compose -f extras/jetson/docker-compose.yml up + docker compose -f extras/jetson/docker-compose.yml up docker exec -it ros-test_node-1 bash export ROS_DOMAIN_ID=18 diff --git a/extras/jetson/dockerfile_ros b/extras/jetson/dockerfile_ros deleted file mode 100644 index dd086b8..0000000 --- a/extras/jetson/dockerfile_ros +++ /dev/null @@ -1,60 +0,0 @@ -FROM rapidposetriangulation -WORKDIR / - -ARG DEBIAN_FRONTEND=noninteractive -ENV LANG=C.UTF-8 -ENV LC_ALL=C.UTF-8 -WORKDIR / - -# Install ROS2 -# https://docs.ros.org/en/humble/Installation/Ubuntu-Install-Debians.html -RUN apt-get update && apt-get install -y --no-install-recommends locales -RUN locale-gen en_US en_US.UTF-8 && update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 -RUN apt-get update && apt-get install -y --no-install-recommends software-properties-common -RUN add-apt-repository universe -RUN apt-get update && apt-get install -y --no-install-recommends curl -RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg -RUN echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" > /etc/apt/sources.list.d/ros2.list -RUN apt-get update && apt-get install -y --no-install-recommends ros-humble-ros-base python3-argcomplete -RUN apt-get update && apt-get install -y --no-install-recommends ros-dev-tools -RUN echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc - -# Create ROS2 workspace for basic packages -RUN mkdir -p /project/base/src/ -RUN cd /project/base/; colcon build -RUN echo "source /project/base/install/setup.bash" >> ~/.bashrc - -# Fix ros package building error -RUN pip3 install --no-cache-dir "setuptools<=58.2.0" - -# Install opencv and cv_bridge -RUN apt-get update && apt-get install -y --no-install-recommends libboost-dev -RUN apt-get update && apt-get install -y --no-install-recommends libboost-python-dev -RUN apt-get update && apt-get install -y --no-install-recommends libopencv-dev -RUN cd /project/base/src/; git clone --branch humble --depth=1 https://github.com/ros-perception/vision_opencv.git -RUN /bin/bash -i -c 'cd /project/base/; colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release' - -# Create ROS2 workspace for project packages -RUN mkdir -p /project/dev_ws/src/ -RUN cd /project/dev_ws/; colcon build -RUN echo "source /project/dev_ws/install/setup.bash" >> ~/.bashrc - -# Copy modules -COPY ./extras/include/ /RapidPoseTriangulation/extras/include/ -COPY ./scripts/ /RapidPoseTriangulation/scripts/ -COPY ./extras/ros/rpt2d_wrapper_cpp /RapidPoseTriangulation/extras/ros/rpt2d_wrapper_cpp/ - -# Link and build as ros package -RUN ln -s /RapidPoseTriangulation/extras/ros/rpt2d_wrapper_cpp/ /project/dev_ws/src/rpt2d_wrapper_cpp -RUN /bin/bash -i -c 'cd /project/dev_ws/; colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release' - -# Update ros packages -> autocompletion and check -RUN /bin/bash -i -c 'ros2 pkg list' - -# Clear cache to save space, only has an effect if image is squashed -RUN apt-get autoremove -y \ - && apt-get clean \ - && rm -rf /var/lib/apt/lists/* - -WORKDIR /RapidPoseTriangulation/ -CMD ["/bin/bash"] diff --git a/extras/ros/dockerfile b/extras/ros/dockerfile index 07de25d..26d9da0 100644 --- a/extras/ros/dockerfile +++ b/extras/ros/dockerfile @@ -14,6 +14,9 @@ RUN apt-get update && apt-get install -y --no-install-recommends ros-humble-ros- RUN apt-get update && apt-get install -y --no-install-recommends ros-dev-tools RUN echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc +# Fix ros package building error +RUN pip3 install --no-cache-dir "setuptools<=58.2.0" + # Create ROS2 workspace for basic packages RUN mkdir -p /project/base/src/ RUN cd /project/base/; colcon build @@ -39,9 +42,6 @@ RUN mkdir -p /project/dev_ws/src/ RUN cd /project/dev_ws/; colcon build RUN echo "source /project/dev_ws/install/setup.bash" >> ~/.bashrc -# Fix ros package building error -RUN pip3 install --no-cache-dir "setuptools<=58.2.0" - # Copy modules COPY ./extras/include/ /RapidPoseTriangulation/extras/include/ COPY ./scripts/ /RapidPoseTriangulation/scripts/