FROM osrf/ros:humble-desktop-full # SETUP ENVS ENV LANG=C.UTF-8 ENV LC_ALL=C.UTF-8 ENV DEBIAN_FRONTEND noninteractive ENV NVIDIA_VISIBLE_DEVICES ${NVIDIA_VISIBLE_DEVICES:-all} ENV NVIDIA_DRIVER_CAPABILITIES ${NVIDIA_DRIVER_CAPABILITIES:+$NVIDIA_DRIVER_CAPABILITIES,}graphics # SETUP parallel workers ARG parallel_workers=1 # INSTALL SOME ESSENTIAL PROGRAMS RUN apt update && \ apt install -y \ git wget bash-completion unzip python3-pip RUN pip3 install rosbags # CREATE the workspace RUN mkdir -p /arm_ws/src WORKDIR /arm_ws RUN /bin/bash -c ". /opt/ros/humble/setup.bash; colcon build --parallel-workers $parallel_workers --symlink-install" # INSTALL lidarslam_ros2 WORKDIR /arm_ws/src RUN git clone --recursive https://github.com/rsasaki0109/lidarslam_ros2 WORKDIR /arm_ws RUN rosdep update RUN rosdep install --from-paths src --ignore-src -r -y RUN /bin/bash -c " . /opt/ros/humble/setup.bash; colcon build --parallel-workers ${parallel_workers} --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release" # DOWNLOAD 1st ROS Bag and convert it to ROS2 RUN mkdir bags WORKDIR /arm_ws/bags RUN wget http://www.aisl.cs.tut.ac.jp/databases/hdl_graph_slam/hdl_400.bag.tar.gz RUN tar -zxvf hdl_400.bag.tar.gz RUN rm hdl_400.bag.tar.gz RUN rosbags-convert --src hdl_400.bag --dst hdl_400 RUN rm hdl_400.bag # DOWNLOAD 2nd ROS Bag RUN wget https://chmura.put.poznan.pl/s/23jd0OBrPYvcNWB/download -O ./kitti.tar.gz RUN tar -zxvf kitti.tar.gz RUN rm kitti.tar.gz RUN mv kitti2 kitti # FILL BASHRC WORKDIR /arm_ws RUN echo "source /opt/ros/${ROS_DISTRO}/setup.bash" >> ~/.bashrc RUN echo "source /arm_ws/install/setup.bash" >> ~/.bashrc