Browse Source

fix the app to work on Nvidia Jetson Orin

main
Nicolas Massé 5 months ago
parent
commit
137530331f
  1. 27
      app/Containerfile
  2. 1
      app/app.py
  3. 4
      app/requirements.txt
  4. 0
      base-image/jetpack/Containerfile
  5. 0
      base-image/jetpack/build.sh

27
app/Containerfile

@ -1,35 +1,42 @@
FROM quay.io/nmasse-redhat/jetpack-multiarch:r36.4.0 FROM nvcr.io/nvidia/l4t-jetpack:r36.3.0
ARG PYPI_MIRROR_URL
ADD *.py *.jpg *.onnx requirements.txt /opt/app ADD *.py *.jpg *.onnx requirements.txt /opt/app
WORKDIR /opt/app WORKDIR /opt/app
RUN <<EOF RUN <<EOF
set -Eeu set -Eeu
# Tell dpkg-configure to avoid asking questions... # Install pip
echo "Installing pip for $(python3 -V)..."
export DEBIAN_FRONTEND=noninteractive export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install -y python3-pip
rm -rf /var/lib/apt/lists/*
apt-get clean
# No caching # No caching
export PIP_NO_CACHE_DIR=1 export PIP_NO_CACHE_DIR=1
# Install git + pip # Local PyPi repository ?
apt update if [ -n "${PYPI_MIRROR_URL:-}" ]; then
apt install -y git python3-pip pip config set global.index-url "${PYPI_MIRROR_URL}"
rm -rf /var/lib/apt/lists/* fi
apt-get clean
# Install Python dependencies # Install Python dependencies
case "$(arch)" in case "$(arch)" in
aarch64) aarch64)
echo "Downloading onnxruntime_gpu from Nvidia" echo "Downloading onnxruntime_gpu from Nvidia"
wget -q https://nvidia.box.com/shared/static/i7n40ki3pl2x57vyn4u7e9asyiqlnl7n.whl -O onnxruntime_gpu-1.16.0-cp310-cp310-linux_aarch64.whl # See https://elinux.org/Jetson_Zoo#ONNX_Runtime for updates
pip3 install onnxruntime_gpu-1.16.0-cp310-cp310-linux_aarch64.whl wget -q https://nvidia.box.com/shared/static/6l0u97rj80ifwkk8rqbzj1try89fk26z.whl -O onnxruntime_gpu-1.19.0-cp310-cp310-linux_aarch64.whl
rm -f onnxruntime_gpu-1.16.0-cp310-cp310-linux_aarch64.whl pip3 install onnxruntime_gpu-1.19.0-cp310-cp310-linux_aarch64.whl
rm -f onnxruntime_gpu-1.19.0-cp310-cp310-linux_aarch64.whl
;; ;;
x86_64) x86_64)
pip3 install onnxruntime_gpu pip3 install onnxruntime_gpu
;; ;;
esac esac
pip3 install -r requirements.txt pip3 install -r requirements.txt
rm -f $HOME/.config/pip/pip.conf
EOF EOF
ENTRYPOINT [ "python3", "app.py" ] ENTRYPOINT [ "python3", "app.py" ]

1
app/app.py

@ -1,3 +1,4 @@
#!/usr/bin/python3
import numpy as np import numpy as np
import time import time
import onnxruntime as ort import onnxruntime as ort

4
app/requirements.txt

@ -1,3 +1,3 @@
opencv-python-headless opencv-python-headless
numpy numpy<2
onnxruntime_gpu onnxruntime-gpu

0
base-image/Containerfile → base-image/jetpack/Containerfile

0
base-image/build.sh → base-image/jetpack/build.sh

Loading…
Cancel
Save