2023-10-07 17:51:02 +03:00
|
|
|
# syntax=docker/dockerfile:1.6
|
2023-07-26 13:50:41 +03:00
|
|
|
|
|
|
|
|
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
|
|
|
|
|
ARG DEBIAN_FRONTEND=noninteractive
|
|
|
|
|
|
|
|
|
|
ARG TRT_BASE=nvcr.io/nvidia/tensorrt:23.03-py3
|
|
|
|
|
|
|
|
|
|
# Build TensorRT-specific library
|
|
|
|
|
FROM ${TRT_BASE} AS trt-deps
|
|
|
|
|
|
2024-03-05 15:04:13 +03:00
|
|
|
ARG COMPUTE_LEVEL
|
|
|
|
|
|
2024-05-10 06:27:07 +03:00
|
|
|
RUN apt-get update && \
|
|
|
|
|
apt-get install software-properties-common -y && \
|
|
|
|
|
add-apt-repository ppa:deadsnakes/ppa -y && \
|
|
|
|
|
apt-get update
|
|
|
|
|
|
|
|
|
|
RUN echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | tee /etc/apt/sources.list.d/coral-edgetpu.list
|
|
|
|
|
RUN curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
|
|
|
|
|
|
2023-07-26 13:50:41 +03:00
|
|
|
RUN apt-get update \
|
|
|
|
|
&& apt-get install -y git build-essential cuda-nvcc-* cuda-nvtx-* libnvinfer-dev libnvinfer-plugin-dev libnvparsers-dev libnvonnxparsers-dev \
|
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
|
RUN --mount=type=bind,source=docker/tensorrt/detector/tensorrt_libyolo.sh,target=/tensorrt_libyolo.sh \
|
|
|
|
|
/tensorrt_libyolo.sh
|
|
|
|
|
|
|
|
|
|
# Frigate w/ TensorRT Support as separate image
|
|
|
|
|
FROM deps AS tensorrt-base
|
|
|
|
|
|
|
|
|
|
#Disable S6 Global timeout
|
|
|
|
|
ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
|
|
|
|
|
|
|
|
|
|
COPY --from=trt-deps /usr/local/lib/libyolo_layer.so /usr/local/lib/libyolo_layer.so
|
|
|
|
|
COPY --from=trt-deps /usr/local/src/tensorrt_demos /usr/local/src/tensorrt_demos
|
|
|
|
|
COPY docker/tensorrt/detector/rootfs/ /
|
|
|
|
|
ENV YOLO_MODELS="yolov7-320"
|
2023-10-07 17:21:03 +03:00
|
|
|
|
|
|
|
|
HEALTHCHECK --start-period=600s --start-interval=5s --interval=15s --timeout=5s --retries=3 \
|
|
|
|
|
CMD curl --fail --silent --show-error http://127.0.0.1:5000/api/version || exit 1
|