Skip to content

Commit 37773cd

Browse files
committed
support ubuntu24 (but there is not tested)
1 parent 612f82f commit 37773cd

9 files changed

Lines changed: 91 additions & 106 deletions

File tree

yolox_ros_cpp/docker/onnxruntime/docker-compose.yaml

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,17 +5,23 @@ services:
55
build:
66
context: .
77
args:
8-
- BASE_TAB=12.1.0-cudnn8-devel-ubuntu22.04
9-
image: fateshelled/onnxruntime_yolox_ros:latest
8+
- BASE_TAB=12.6.1-cudnn-devel-ubuntu24.04
109
network_mode: host
11-
runtime: nvidia
10+
deploy:
11+
resources:
12+
reservations:
13+
devices:
14+
- driver: nvidia
15+
count: 1
16+
capabilities: [gpu]
17+
1218
environment:
1319
- DISPLAY=$DISPLAY
1420
volumes:
1521
- $HOME/ros2_ws:/root/ros2_ws
1622
- /tmp/.X11-unix:/tmp/.X11-unix
17-
devices:
18-
- "/dev/video0:/dev/video0"
23+
# devices:
24+
# - "/dev/video0:/dev/video0"
1925
working_dir: /root/ros2_ws
2026
tty: true
2127
command: bash
Lines changed: 36 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,47 @@
1-
ARG BASE_TAG=11.7.1-cudnn8-devel-ubuntu22.04
2-
FROM nvcr.io/nvidia/cuda:${BASE_TAG}
3-
ENV DEBIAN_FRONTEND=noninteractive
1+
ARG BASE_TAG=12.6.1-cudnn-devel-ubuntu24.04
2+
FROM nvidia/cuda:${BASE_TAG}
43

5-
ENV PATH /usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH}
6-
RUN apt update && \
7-
apt install -y python3-dev python3-pip \
8-
ca-certificates g++ gcc make git aria2 && \
9-
apt -y clean && \
10-
rm -rf /var/lib/apt/lists/* && \
11-
aria2c -q -d /tmp -o cmake-3.21.0-linux-x86_64.tar.gz https://github.com/Kitware/CMake/releases/download/v3.21.0/cmake-3.21.0-linux-x86_64.tar.gz && \
12-
tar -zxf /tmp/cmake-3.21.0-linux-x86_64.tar.gz --strip=1 -C /usr
13-
RUN python3 -m pip install -U pip && \
14-
python3 -m pip install -U numpy setuptools wheel && \
15-
python3 -m pip cache purge
4+
ENV TZ=Asia/Tokyo
5+
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
6+
ENV DEBIAN_FRONTEND=noninteractive
167

17-
WORKDIR /workdir
18-
RUN git clone --depth 1 --recursive https://github.com/microsoft/onnxruntime -b v1.12.1 && \
19-
cd onnxruntime && \
20-
./build.sh --cudnn_home /usr/lib/x86_64-linux-gnu/ \
21-
--cuda_home /usr/local/cuda \
22-
--use_cuda \
23-
--config RelWithDebInfo \
24-
--build_shared_lib \
25-
--skip_tests && \
26-
cd build/Linux/RelWithDebInfo && \
27-
make install && \
28-
rm -r /workdir/onnxruntime
8+
ENV PATH /usr/local/nvidia/bin:/usr/local/cuda/bin:${PATH}
299

30-
# Install ROS2
31-
RUN apt update && apt install locales && \
10+
RUN apt update && apt install -y locales git cmake wget curl gnupg2 lsb-release python3-numpy python3-setuptools python3-wheel && \
3211
locale-gen en_US en_US.UTF-8 && \
3312
update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 && \
3413
apt -y clean && \
3514
rm -rf /var/lib/apt/lists/*
3615
ENV LANG=en_US.UTF-8
3716

38-
RUN apt update && \
39-
apt install -y git wget curl gnupg2 lsb-release && \
40-
curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg && \
41-
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null && \
42-
sed -i -e 's/ubuntu .* main/ubuntu jammy main/g' /etc/apt/sources.list.d/ros2.list && \
43-
apt update && \
44-
apt install -y ros-dev-tools \
45-
ros-humble-cv-bridge \
46-
ros-humble-generate-parameter-library \
47-
ros-humble-parameter-traits \
48-
ros-humble-ros-base \
49-
ros-humble-rqt-image-view \
50-
ros-humble-v4l2-camera && \
51-
apt -y clean && \
52-
rm -rf /var/lib/apt/lists/* && \
53-
pip install -U pip && \
54-
pip install catkin_pkg && \
55-
pip install empy && \
56-
pip install lark && \
57-
python3 -m pip cache purge
17+
WORKDIR /workdir
18+
# RUN git clone --depth 1 --recursive https://github.com/microsoft/onnxruntime -b v1.12.1 && \
19+
# cd onnxruntime && \
20+
# ./build.sh --cudnn_home /usr/lib/x86_64-linux-gnu/ \
21+
# --cuda_home /usr/local/cuda \
22+
# --use_cuda \
23+
# --config RelWithDebInfo \
24+
# --build_shared_lib \
25+
# --skip_tests && \
26+
# cd build/Linux/RelWithDebInfo && \
27+
# make install && \
28+
# rm -r /workdir/onnxruntime
5829

30+
# RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg && \
31+
# echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null && \
32+
# sed -i -e 's/ubuntu .* main/ubuntu noble main/g' /etc/apt/sources.list.d/ros2.list && \
33+
# apt update && \
34+
# apt install -y ros-dev-tools \
35+
# ros-jazzy-cv-bridge \
36+
# ros-jazzy-generate-parameter-library \
37+
# ros-jazzy-parameter-traits \
38+
# ros-jazzy-ros-base \
39+
# ros-jazzy-rqt-image-view \
40+
# ros-jazzy-usb-cam \
41+
# ros-jazzy-vision-msgs && \
42+
# apt -y clean && \
43+
# rm -rf /var/lib/apt/lists/*
5944

60-
COPY ./ros_entrypoint.sh /ros_entrypoint.sh
61-
RUN echo "source /ros_entrypoint.sh" >> /root/.bashrc
62-
# ENTRYPOINT ["/ros_entrypoint.sh"]
63-
CMD ["bash"]
45+
# WORKDIR /workspace
46+
# COPY ./ros_entrypoint.sh /ros_entrypoint.sh
47+
# RUN echo "source /ros_entrypoint.sh" >> /root/.bashrc
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
#!/bin/bash
2-
source /opt/ros/humble/setup.bash
3-
source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash
2+
source /opt/ros/jazzy/setup.bash

yolox_ros_cpp/docker/openvino/docker-compose.yaml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,10 @@ services:
88
environment:
99
- DISPLAY=$DISPLAY
1010
volumes:
11-
- ../../../:/root/ros2_ws/src
11+
- $HOME/ros2_ws:/root/ros2_ws
1212
- /tmp/.X11-unix:/tmp/.X11-unix
13-
devices:
14-
- "/dev/video0:/dev/video0"
13+
# devices:
14+
# - "/dev/video0:/dev/video0"
1515
working_dir: /root/ros2_ws
1616
tty: true
1717
command: bash
18-
Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM ubuntu:22.04
1+
FROM ubuntu:24.04
22

33
ENV TZ=Asia/Tokyo
44
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
@@ -16,30 +16,27 @@ ENV LANG=en_US.UTF-8
1616
RUN apt update && \
1717
apt install -y git wget curl gnupg2 lsb-release
1818

19-
# ROS
2019
RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg && \
2120
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null && \
22-
sed -i -e 's/ubuntu .* main/ubuntu jammy main/g' /etc/apt/sources.list.d/ros2.list
21+
sed -i -e 's/ubuntu .* main/ubuntu noble main/g' /etc/apt/sources.list.d/ros2.list
2322
# INTEL OPENVINO
2423
RUN wget https://apt.repos.intel.com/intel-gpg-keys/GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB && \
2524
apt-key add GPG-PUB-KEY-INTEL-SW-PRODUCTS.PUB && \
26-
echo "deb https://apt.repos.intel.com/openvino/2024 ubuntu22 main" | tee /etc/apt/sources.list.d/intel-openvino-2024.list
25+
echo "deb https://apt.repos.intel.com/openvino/2024 ubuntu24 main" | tee /etc/apt/sources.list.d/intel-openvino-2024.list
2726

28-
# install ros and openvino
2927
RUN apt update && \
3028
apt install -y openvino-2024.2.0 \
3129
ros-dev-tools \
32-
ros-humble-cv-bridge \
33-
ros-humble-generate-parameter-library \
34-
ros-humble-parameter-traits \
35-
ros-humble-ros-base \
36-
ros-humble-rqt-image-view \
37-
ros-humble-v4l2-camera && \
30+
ros-jazzy-cv-bridge \
31+
ros-jazzy-generate-parameter-library \
32+
ros-jazzy-parameter-traits \
33+
ros-jazzy-ros-base \
34+
ros-jazzy-rqt-image-view \
35+
ros-jazzy-usb-cam \
36+
ros-jazzy-vision-msgs && \
3837
apt -y clean && \
3938
rm -rf /var/lib/apt/lists/*
4039

4140
WORKDIR /workspace
4241
COPY ./ros_entrypoint.sh /ros_entrypoint.sh
4342
RUN echo "source /ros_entrypoint.sh" >> /root/.bashrc
44-
# RUN echo "source /opt/intel/openvino/bin/setupvars.sh " >> /root/.bashrc
45-
CMD ["bash"]
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,2 @@
11
#!/bin/bash
2-
source /opt/ros/humble/setup.bash
3-
source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash
4-
2+
source /opt/ros/jazzy/setup.bash

yolox_ros_cpp/docker/tensorrt/docker-compose.yaml

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,23 @@ services:
55
build:
66
context: .
77
args:
8-
- TENSORRT_VERSION=10.1
9-
- CUDNN_VERSION=9.2
10-
- PYTHON_VERSION=3.10
8+
- TENSORRT_VERSION=12.6
9+
- PYTHON_VERSION=3.12
1110
network_mode: host
12-
runtime: nvidia
11+
deploy:
12+
resources:
13+
reservations:
14+
devices:
15+
- driver: nvidia
16+
count: 1
17+
capabilities: [gpu]
1318
environment:
1419
- DISPLAY=$DISPLAY
1520
volumes:
1621
- $HOME/ros2_ws:/root/ros2_ws
1722
- /tmp/.X11-unix:/tmp/.X11-unix
18-
devices:
19-
- "/dev/video0:/dev/video0"
23+
# devices:
24+
# - "/dev/video0:/dev/video0"
2025
working_dir: /root/ros2_ws
2126
tty: true
2227
command: bash

yolox_ros_cpp/docker/tensorrt/dockerfile

Lines changed: 17 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# pytorch/TensorRT/docker/Dockerfile
22
# Base image starts with CUDA
3-
ARG BASE_IMG=nvidia/cuda:12.4.1-devel-ubuntu22.04
3+
ARG BASE_IMG=nvidia/cuda:12.6.1-devel-ubuntu24.04
44
FROM ${BASE_IMG} as base
5-
ENV BASE_IMG=nvidia/cuda:12.4.1-devel-ubuntu22.04
5+
ENV BASE_IMG=nvidia/cuda:12.6.1-devel-ubuntu24.04
66

77
ARG TENSORRT_VERSION
88
ENV TENSORRT_VERSION=${TENSORRT_VERSION}
@@ -32,8 +32,8 @@ RUN pyenv install -v ${PYTHON_VERSION}
3232
RUN pyenv global ${PYTHON_VERSION}
3333

3434
# Install TensorRT + dependencies
35-
RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/3bf863cc.pub
36-
RUN add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /"
35+
RUN apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/3bf863cc.pub
36+
RUN add-apt-repository "deb https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2404/x86_64/ /"
3737
RUN apt-get update
3838
RUN TENSORRT_MAJOR_VERSION=`echo ${TENSORRT_VERSION} | cut -d '.' -f 1` && apt-get install -y tensorrt
3939

@@ -48,24 +48,22 @@ ENV LANG=en_US.UTF-8
4848

4949
RUN apt update && \
5050
apt install -y git wget curl gnupg2 lsb-release && \
51-
curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg && \
51+
52+
RUN curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg && \
5253
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | tee /etc/apt/sources.list.d/ros2.list > /dev/null && \
53-
sed -i -e 's/ubuntu .* main/ubuntu jammy main/g' /etc/apt/sources.list.d/ros2.list && \
54+
sed -i -e 's/ubuntu .* main/ubuntu noble main/g' /etc/apt/sources.list.d/ros2.list && \
5455
apt update && \
55-
apt install -y ros-dev-tools \
56-
ros-humble-cv-bridge \
57-
ros-humble-generate-parameter-library \
58-
ros-humble-parameter-traits \
59-
ros-humble-ros-base \
60-
ros-humble-rqt-image-view \
61-
ros-humble-v4l2-camera && \
56+
apt install -y openvino-2024.2.0 \
57+
ros-dev-tools \
58+
ros-jazzy-cv-bridge \
59+
ros-jazzy-generate-parameter-library \
60+
ros-jazzy-parameter-traits \
61+
ros-jazzy-ros-base \
62+
ros-jazzy-rqt-image-view \
63+
ros-jazzy-usb-cam \
64+
ros-jazzy-vision-msgs && \
6265
apt -y clean && \
63-
rm -rf /var/lib/apt/lists/* && \
64-
pip install -U pip && \
65-
pip install catkin_pkg && \
66-
pip install empy==3.3.4 && \
67-
pip install lark && \
68-
python3 -m pip cache purge
66+
rm -rf /var/lib/apt/lists/*
6967

7068
COPY ./ros_entrypoint.sh /ros_entrypoint.sh
7169
RUN echo "source /ros_entrypoint.sh" >> /root/.bashrc
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
#!/bin/bash
2-
source /opt/ros/humble/setup.bash
3-
source /usr/share/colcon_argcomplete/hook/colcon-argcomplete.bash
2+
source /opt/ros/jazzy/setup.bash

0 commit comments

Comments
 (0)