Updated docker file to use custom libcamera fork

This commit is contained in:
2026-04-06 19:20:36 +02:00
parent d5ed611c20
commit 2c0aae45d6
4 changed files with 32 additions and 3 deletions

3
.gitmodules vendored
View File

@@ -1,3 +1,6 @@
[submodule "ext/BehaviorTree.ROS2"]
path = ext/BehaviorTree.ROS2
url = https://github.com/BehaviorTree/BehaviorTree.ROS2.git
[submodule "ext/camera_ros"]
path = ext/camera_ros
url = https://github.com/christianrauch/camera_ros.git

View File

@@ -1,4 +1,4 @@
FROM ros:jazzy-ros-base
FROM ros:jazzy-perception
ENV DEBIAN_FRONTEND=noninteractive
@@ -6,10 +6,28 @@ ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y \
python3-colcon-common-extensions \
python3-rosdep \
meson cmake \
build-essential \
udev \
git
# ---------- Libcamera ----------
WORKDIR /extras
RUN apt-get install -y libboost-dev \
libgnutls28-dev openssl libtiff5-dev \
pybind11-dev \
qtbase5-dev libqt5core5a libqt5gui5 libqt5widgets5 \
python3-yaml python3-ply python3-jinja2 python3-pip\
libglib2.0-dev libgstreamer-plugins-base1.0-dev \
build-essential
RUN git clone https://github.com/raspberrypi/libcamera.git \
&& cd libcamera \
&& meson setup build --buildtype=release -Dpipelines=rpi/vc4,rpi/pisp -Dipas=rpi/vc4,rpi/pisp -Dv4l2=true -Dgstreamer=enabled -Dtest=false -Dlc-compliance=disabled -Dcam=disabled -Dqcam=disabled -Ddocumentation=disabled -Dpycamera=enabled \
&& ninja -C build install
# ---------- Initialize rosdep ----------
RUN rosdep init || true
RUN rosdep update
@@ -22,13 +40,19 @@ COPY toid_bot_description/package.xml toid_bot_description/package.xml
COPY toid_control/package.xml toid_control/package.xml
COPY toid_msgs/package.xml toid_msgs/package.xml
COPY toid_odometry/package.xml toid_odometry/package.xml
COPY toid_lidar/package.xml toid_lidar/package.xml
COPY toid_interaction/package.xml toid_interaction/package.xml
COPY toid_costmaps/package.xml toid_costmaps/package.xml
COPY toid_bt/package.xml toid_bt/package.xml
COPY toid_spinner_controller/package.xml toid_spinner_controller/package.xml
COPY toid_behaviors/package.xml toid_behaviors/package.xml
COPY toid_navigation/package.xml toid_navigation/package.xml
COPY ext/camera_ros/package.xml ext/camera_ros/package.xml
COPY ext/BehaviorTree.ROS2/ ext/BehaviorTree.ROS2/
# ---------- Install dependencies ----------
RUN . /opt/ros/jazzy/setup.sh && \
rosdep install --from-paths ./ --ignore-src -r -y \
rosdep install --from-paths ./ --ignore-src -r -y --skip-keys=libcamera \
&& rm -rf /var/lib/apt/lists/*
RUN rm -rf ./*

1
ext/camera_ros Submodule

Submodule ext/camera_ros added at 121c98a7fe

View File

@@ -2,4 +2,5 @@
source /opt/ros/jazzy/setup.bash
colcon build --packages-up-to-regex "toid_(?!bt)"
colcon build --packages-up-to-regex "toid_(?!bt)"
colcon build --packages-up-to-regex "camera_ros"