Go2Py/docker/Dockerfile.realsense

50 lines
2.5 KiB
Docker

# Copyright (c) 2023, NVIDIA CORPORATION. All rights reserved.
#
# NVIDIA CORPORATION and its licensors retain all intellectual property
# and proprietary rights in and to this software, related documentation
# and any modifications thereto. Any use, reproduction, disclosure or
# distribution of this software and related documentation without an express
# license agreement from NVIDIA CORPORATION is strictly prohibited.
# Dockerfile for setting up Realsense driver
# https://github.com/jetsonhacks/installRealSenseSDK
ARG BASE_IMAGE
FROM ${BASE_IMAGE}
ARG LIBREALSENSE_SOURCE_VERSION=v2.55.1
ARG LIBREALSENSE_DEB_VERSION=2.55.1-0~realsense.12474
ARG LIBREALSENSE_DKMS_DEB_VERSION=1.3.26-0ubuntu1
ARG REALSENSE2_CAMERA_ROS_DEB_VERSION=4.54.1-1jammy.20240517.191635
# Install realsense2-camera ROS package and librealsense from binaries for x86_64 only
RUN --mount=type=cache,target=/var/cache/apt \
if [[ "$(uname -m)" == "x86_64" ]]; then \
mkdir -p /etc/apt/keyrings && \
curl -sSf https://librealsense.intel.com/Debian/librealsense.pgp | \
tee /etc/apt/keyrings/librealsense.pgp > /dev/null && \
echo "deb [signed-by=/etc/apt/keyrings/librealsense.pgp] \
https://librealsense.intel.com/Debian/apt-repo `lsb_release -cs` main" | \
tee /etc/apt/sources.list.d/librealsense.list && apt-get update && \
apt-get install -y \
librealsense2-dkms=${LIBREALSENSE_DKMS_DEB_VERSION} \
librealsense2-utils=${LIBREALSENSE_DEB_VERSION} \
librealsense2-dev=${LIBREALSENSE_DEB_VERSION} \
ros-humble-realsense2-camera=${REALSENSE2_CAMERA_ROS_DEB_VERSION}; \
fi
COPY scripts/build-librealsense.sh /opt/realsense/build-librealsense.sh
COPY scripts/install-realsense-dependencies.sh /opt/realsense/install-realsense-dependencies.sh
# Build librealsense from source for aarch64 only
# The realsense2-camera ROS package will be built from source as part of the "RealSense Setup docs" for aarch64 only
RUN if [[ $(uname -m) == "aarch64" ]]; then \
chmod +x /opt/realsense/install-realsense-dependencies.sh && \
/opt/realsense/install-realsense-dependencies.sh; \
chmod +x /opt/realsense/build-librealsense.sh && /opt/realsense/build-librealsense.sh -v ${LIBREALSENSE_SOURCE_VERSION}; \
fi
# Copy hotplug script for udev rules/hotplug for RealSense
RUN mkdir -p /opt/realsense/
COPY scripts/hotplug-realsense.sh /opt/realsense/hotplug-realsense.sh
COPY udev_rules/99-realsense-libusb-custom.rules /etc/udev/rules.d/99-realsense-libusb-custom.rules