mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-05 18:55:23 +03:00
Cleanup docker build file system
This commit is contained in:
parent
22a22e668d
commit
0e434e7cb5
7
.github/workflows/ci.yml
vendored
7
.github/workflows/ci.yml
vendored
@ -5,6 +5,7 @@ on:
|
|||||||
branches:
|
branches:
|
||||||
- dev
|
- dev
|
||||||
- master
|
- master
|
||||||
|
- community-boards
|
||||||
|
|
||||||
# only run the latest commit to avoid cache overwrites
|
# only run the latest commit to avoid cache overwrites
|
||||||
concurrency:
|
concurrency:
|
||||||
@ -44,8 +45,6 @@ jobs:
|
|||||||
run: make version
|
run: make version
|
||||||
- name: Create short sha
|
- name: Create short sha
|
||||||
run: echo "SHORT_SHA=${GITHUB_SHA::7}" >> $GITHUB_ENV
|
run: echo "SHORT_SHA=${GITHUB_SHA::7}" >> $GITHUB_ENV
|
||||||
- name: Create base image path
|
|
||||||
run: echo "BASE_IMAGE=ghcr.io/${{ steps.lowercaseRepo.outputs.lowercase }}:${{ github.ref_name }}-${{ env.SHORT_SHA }}" >> $GITHUB_ENV
|
|
||||||
- name: Build and push main build
|
- name: Build and push main build
|
||||||
uses: docker/build-push-action@v4
|
uses: docker/build-push-action@v4
|
||||||
with:
|
with:
|
||||||
@ -65,8 +64,6 @@ jobs:
|
|||||||
file: docker/build/rpi/Dockerfile
|
file: docker/build/rpi/Dockerfile
|
||||||
push: true
|
push: true
|
||||||
platforms: linux/arm64
|
platforms: linux/arm64
|
||||||
build-args: |
|
|
||||||
BASE_IMAGE=${{ env.BASE_IMAGE }}
|
|
||||||
tags: |
|
tags: |
|
||||||
${{ env.BASE_IMAGE }}-rpi
|
${{ env.BASE_IMAGE }}-rpi
|
||||||
cache-from: type=gha
|
cache-from: type=gha
|
||||||
@ -74,7 +71,7 @@ jobs:
|
|||||||
uses: docker/build-push-action@v4
|
uses: docker/build-push-action@v4
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
file: docker/build/main/Dockerfile
|
file: docker/build/trt/Dockerfile
|
||||||
push: true
|
push: true
|
||||||
platforms: linux/amd64
|
platforms: linux/amd64
|
||||||
target: frigate-tensorrt
|
target: frigate-tensorrt
|
||||||
|
|||||||
19
Makefile
19
Makefile
@ -6,6 +6,13 @@ IMAGE_REPO ?= ghcr.io/blakeblackshear/frigate
|
|||||||
GITHUB_REF_NAME ?= $(shell git rev-parse --abbrev-ref HEAD)
|
GITHUB_REF_NAME ?= $(shell git rev-parse --abbrev-ref HEAD)
|
||||||
CURRENT_UID := $(shell id -u)
|
CURRENT_UID := $(shell id -u)
|
||||||
CURRENT_GID := $(shell id -g)
|
CURRENT_GID := $(shell id -g)
|
||||||
|
BOARDS= #Initialized empty
|
||||||
|
|
||||||
|
include docker/*/*.mk
|
||||||
|
|
||||||
|
build-boards: $(BOARDS:%=build-%)
|
||||||
|
|
||||||
|
push-boards: $(BOARDS:%=push-%)
|
||||||
|
|
||||||
version:
|
version:
|
||||||
echo 'VERSION = "$(VERSION)-$(COMMIT_HASH)"' > frigate/version.py
|
echo 'VERSION = "$(VERSION)-$(COMMIT_HASH)"' > frigate/version.py
|
||||||
@ -13,27 +20,17 @@ version:
|
|||||||
local: version
|
local: version
|
||||||
docker buildx build --target=frigate --tag frigate:latest --load --file docker/build/main/Dockerfile .
|
docker buildx build --target=frigate --tag frigate:latest --load --file docker/build/main/Dockerfile .
|
||||||
|
|
||||||
local-rpi: version local
|
|
||||||
docker buildx build --tag frigate:latest-rpi --build-arg BASE_IMAGE=frigate:latest --load --file docker/build/rpi/Dockerfile .
|
|
||||||
|
|
||||||
local-trt: version
|
|
||||||
docker buildx build --target=frigate-tensorrt --tag frigate:latest-tensorrt --load --file docker/build/main/Dockerfile .
|
|
||||||
|
|
||||||
amd64:
|
amd64:
|
||||||
docker buildx build --platform linux/amd64 --target=frigate --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
docker buildx build --platform linux/amd64 --target=frigate --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
||||||
docker buildx build --platform linux/amd64 --target=frigate-tensorrt --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH)-tensorrt --file docker/build/main/Dockerfile .
|
|
||||||
|
|
||||||
arm64:
|
arm64:
|
||||||
docker buildx build --platform linux/arm64 --target=frigate --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
docker buildx build --platform linux/arm64 --target=frigate --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
||||||
docker buildx build --platform linux/arm64 --build-arg BASE_IMAGE=$(IMAGE_REPO):${VERSION}-$(COMMIT_HASH) --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH)-rpi --file docker/build/rpi/Dockerfile .
|
|
||||||
|
|
||||||
build: version amd64 arm64
|
build: version amd64 arm64
|
||||||
docker buildx build --platform linux/arm64/v8,linux/amd64 --target=frigate --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
docker buildx build --platform linux/arm64/v8,linux/amd64 --target=frigate --tag $(IMAGE_REPO):$(VERSION)-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
||||||
|
|
||||||
push: build
|
push: push-boards
|
||||||
docker buildx build --push --platform linux/arm64/v8,linux/amd64 --target=frigate --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
docker buildx build --push --platform linux/arm64/v8,linux/amd64 --target=frigate --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH) --file docker/build/main/Dockerfile .
|
||||||
docker buildx build --push --platform linux/amd64 --target=frigate-tensorrt --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH)-tensorrt --file docker/build/main/Dockerfile .
|
|
||||||
docker buildx build --push --platform linux/arm64 --build-arg BASE_IMAGE=$(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH) --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH)-rpi --file docker/build/rpi/Dockerfile .
|
|
||||||
|
|
||||||
run: local
|
run: local
|
||||||
docker run --rm --publish=5000:5000 --volume=${PWD}/config:/config frigate:latest
|
docker run --rm --publish=5000:5000 --volume=${PWD}/config:/config frigate:latest
|
||||||
|
|||||||
@ -1,14 +0,0 @@
|
|||||||
# syntax=docker/dockerfile:1.2
|
|
||||||
|
|
||||||
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
|
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
|
||||||
ARG BASE_IMAGE
|
|
||||||
|
|
||||||
FROM ${BASE_IMAGE} as base
|
|
||||||
ARG TARGETARCH
|
|
||||||
|
|
||||||
RUN rm -rf /usr/lib/btbn-ffmpeg/
|
|
||||||
|
|
||||||
# Install dependencies
|
|
||||||
RUN --mount=type=bind,source=docker/build/rpi/install_deps.sh,target=/deps/install_deps.sh \
|
|
||||||
/deps/install_deps.sh
|
|
||||||
@ -1,5 +1,3 @@
|
|||||||
# syntax=docker/dockerfile:1.2
|
|
||||||
|
|
||||||
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
|
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
|
||||||
ARG DEBIAN_FRONTEND=noninteractive
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
@ -23,7 +21,7 @@ ENV CCACHE_MAXSIZE 2G
|
|||||||
|
|
||||||
# bind /var/cache/apt to tmpfs to speed up nginx build
|
# bind /var/cache/apt to tmpfs to speed up nginx build
|
||||||
RUN --mount=type=tmpfs,target=/tmp --mount=type=tmpfs,target=/var/cache/apt \
|
RUN --mount=type=tmpfs,target=/tmp --mount=type=tmpfs,target=/var/cache/apt \
|
||||||
--mount=type=bind,source=docker/build_nginx.sh,target=/deps/build_nginx.sh \
|
--mount=type=bind,source=docker/main/build_nginx.sh,target=/deps/build_nginx.sh \
|
||||||
--mount=type=cache,target=/root/.ccache \
|
--mount=type=cache,target=/root/.ccache \
|
||||||
/deps/build_nginx.sh
|
/deps/build_nginx.sh
|
||||||
|
|
||||||
@ -34,32 +32,6 @@ RUN wget -qO go2rtc "https://github.com/AlexxIT/go2rtc/releases/download/v1.6.0/
|
|||||||
&& chmod +x go2rtc
|
&& chmod +x go2rtc
|
||||||
|
|
||||||
|
|
||||||
####
|
|
||||||
#
|
|
||||||
# OpenVino Support
|
|
||||||
#
|
|
||||||
# 1. Download and convert a model from Intel's Public Open Model Zoo
|
|
||||||
# 2. Build libUSB without udev to handle NCS2 enumeration
|
|
||||||
#
|
|
||||||
####
|
|
||||||
# Download and Convert OpenVino model
|
|
||||||
FROM base_amd64 AS ov-converter
|
|
||||||
ARG DEBIAN_FRONTEND
|
|
||||||
|
|
||||||
# Install OpenVino Runtime and Dev library
|
|
||||||
COPY requirements-ov.txt /requirements-ov.txt
|
|
||||||
RUN apt-get -qq update \
|
|
||||||
&& apt-get -qq install -y wget python3 python3-distutils \
|
|
||||||
&& wget -q https://bootstrap.pypa.io/get-pip.py -O get-pip.py \
|
|
||||||
&& python3 get-pip.py "pip" \
|
|
||||||
&& pip install -r /requirements-ov.txt
|
|
||||||
|
|
||||||
# Get OpenVino Model
|
|
||||||
RUN mkdir /models \
|
|
||||||
&& cd /models && omz_downloader --name ssdlite_mobilenet_v2 \
|
|
||||||
&& cd /models && omz_converter --name ssdlite_mobilenet_v2 --precision FP16
|
|
||||||
|
|
||||||
|
|
||||||
# libUSB - No Udev
|
# libUSB - No Udev
|
||||||
FROM wget as libusb-build
|
FROM wget as libusb-build
|
||||||
ARG TARGETARCH
|
ARG TARGETARCH
|
||||||
@ -101,7 +73,7 @@ COPY audio-labelmap.txt .
|
|||||||
|
|
||||||
FROM wget AS s6-overlay
|
FROM wget AS s6-overlay
|
||||||
ARG TARGETARCH
|
ARG TARGETARCH
|
||||||
RUN --mount=type=bind,source=docker/install_s6_overlay.sh,target=/deps/install_s6_overlay.sh \
|
RUN --mount=type=bind,source=docker/main/install_s6_overlay.sh,target=/deps/install_s6_overlay.sh \
|
||||||
/deps/install_s6_overlay.sh
|
/deps/install_s6_overlay.sh
|
||||||
|
|
||||||
|
|
||||||
@ -142,15 +114,6 @@ RUN pip3 install -r requirements.txt
|
|||||||
COPY requirements-wheels.txt /requirements-wheels.txt
|
COPY requirements-wheels.txt /requirements-wheels.txt
|
||||||
RUN pip3 wheel --wheel-dir=/wheels -r requirements-wheels.txt
|
RUN pip3 wheel --wheel-dir=/wheels -r requirements-wheels.txt
|
||||||
|
|
||||||
# Make this a separate target so it can be built/cached optionally
|
|
||||||
FROM wheels as trt-wheels
|
|
||||||
ARG DEBIAN_FRONTEND
|
|
||||||
ARG TARGETARCH
|
|
||||||
|
|
||||||
# Add TensorRT wheels to another folder
|
|
||||||
COPY requirements-tensorrt.txt /requirements-tensorrt.txt
|
|
||||||
RUN mkdir -p /trt-wheels && pip3 wheel --wheel-dir=/trt-wheels -r requirements-tensorrt.txt
|
|
||||||
|
|
||||||
|
|
||||||
# Collect deps in a single layer
|
# Collect deps in a single layer
|
||||||
FROM scratch AS deps-rootfs
|
FROM scratch AS deps-rootfs
|
||||||
@ -159,7 +122,7 @@ COPY --from=go2rtc /rootfs/ /
|
|||||||
COPY --from=libusb-build /usr/local/lib /usr/local/lib
|
COPY --from=libusb-build /usr/local/lib /usr/local/lib
|
||||||
COPY --from=s6-overlay /rootfs/ /
|
COPY --from=s6-overlay /rootfs/ /
|
||||||
COPY --from=models /rootfs/ /
|
COPY --from=models /rootfs/ /
|
||||||
COPY docker/rootfs/ /
|
COPY docker/main/rootfs/ /
|
||||||
|
|
||||||
|
|
||||||
# Frigate deps (ffmpeg, python, nginx, go2rtc, s6-overlay, etc)
|
# Frigate deps (ffmpeg, python, nginx, go2rtc, s6-overlay, etc)
|
||||||
@ -177,7 +140,7 @@ ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
|
|||||||
ENV PATH="/usr/lib/btbn-ffmpeg/bin:/usr/local/go2rtc/bin:/usr/local/nginx/sbin:${PATH}"
|
ENV PATH="/usr/lib/btbn-ffmpeg/bin:/usr/local/go2rtc/bin:/usr/local/nginx/sbin:${PATH}"
|
||||||
|
|
||||||
# Install dependencies
|
# Install dependencies
|
||||||
RUN --mount=type=bind,source=docker/build/main/install_deps.sh,target=/deps/install_deps.sh \
|
RUN --mount=type=bind,source=docker/main/install_deps.sh,target=/deps/install_deps.sh \
|
||||||
/deps/install_deps.sh
|
/deps/install_deps.sh
|
||||||
|
|
||||||
RUN --mount=type=bind,from=wheels,source=/wheels,target=/deps/wheels \
|
RUN --mount=type=bind,from=wheels,source=/wheels,target=/deps/wheels \
|
||||||
@ -203,7 +166,7 @@ FROM deps AS devcontainer
|
|||||||
|
|
||||||
# Do not start the actual Frigate service on devcontainer as it will be started by VSCode
|
# Do not start the actual Frigate service on devcontainer as it will be started by VSCode
|
||||||
# But start a fake service for simulating the logs
|
# But start a fake service for simulating the logs
|
||||||
COPY docker/fake_frigate_run /etc/s6-overlay/s6-rc.d/frigate/run
|
COPY docker/main/fake_frigate_run /etc/s6-overlay/s6-rc.d/frigate/run
|
||||||
|
|
||||||
# Create symbolic link to the frigate source code, as go2rtc's create_config.sh uses it
|
# Create symbolic link to the frigate source code, as go2rtc's create_config.sh uses it
|
||||||
RUN mkdir -p /opt/frigate \
|
RUN mkdir -p /opt/frigate \
|
||||||
@ -255,36 +218,3 @@ FROM deps AS frigate
|
|||||||
|
|
||||||
WORKDIR /opt/frigate/
|
WORKDIR /opt/frigate/
|
||||||
COPY --from=rootfs / /
|
COPY --from=rootfs / /
|
||||||
|
|
||||||
# Build TensorRT-specific library
|
|
||||||
FROM nvcr.io/nvidia/tensorrt:23.03-py3 AS trt-deps
|
|
||||||
|
|
||||||
RUN --mount=type=bind,source=docker/support/tensorrt_detector/tensorrt_libyolo.sh,target=/tensorrt_libyolo.sh \
|
|
||||||
/tensorrt_libyolo.sh
|
|
||||||
|
|
||||||
# Frigate w/ TensorRT Support as separate image
|
|
||||||
FROM frigate AS frigate-tensorrt
|
|
||||||
|
|
||||||
#Disable S6 Global timeout
|
|
||||||
ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
|
|
||||||
|
|
||||||
ENV TRT_VER=8.5.3
|
|
||||||
ENV YOLO_MODELS="yolov7-tiny-416"
|
|
||||||
|
|
||||||
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/support/tensorrt_detector/rootfs/ /
|
|
||||||
|
|
||||||
RUN --mount=type=bind,from=trt-wheels,source=/trt-wheels,target=/deps/trt-wheels \
|
|
||||||
pip3 install -U /deps/trt-wheels/*.whl && \
|
|
||||||
ldconfig
|
|
||||||
|
|
||||||
# Dev Container w/ TRT
|
|
||||||
FROM devcontainer AS devcontainer-trt
|
|
||||||
|
|
||||||
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/support/tensorrt_detector/rootfs/ /
|
|
||||||
COPY --from=trt-deps /usr/local/lib/libyolo_layer.so /usr/local/lib/libyolo_layer.so
|
|
||||||
RUN --mount=type=bind,from=trt-wheels,source=/trt-wheels,target=/deps/trt-wheels \
|
|
||||||
pip3 install -U /deps/trt-wheels/*.whl
|
|
||||||
17
docker/rpi/Dockerfile
Normal file
17
docker/rpi/Dockerfile
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
# syntax = edrevo/dockerfile-plus
|
||||||
|
INCLUDE+ docker/main/Dockerfile
|
||||||
|
|
||||||
|
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
|
||||||
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
FROM deps AS rpi-deps
|
||||||
|
ARG TARGETARCH
|
||||||
|
|
||||||
|
RUN rm -rf /usr/lib/btbn-ffmpeg/
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN --mount=type=bind,source=docker/rpi/install_deps.sh,target=/deps/install_deps.sh \
|
||||||
|
/deps/install_deps.sh
|
||||||
|
|
||||||
|
WORKDIR /opt/frigate/
|
||||||
|
COPY --from=rootfs / /
|
||||||
@ -2,19 +2,6 @@
|
|||||||
|
|
||||||
set -euxo pipefail
|
set -euxo pipefail
|
||||||
|
|
||||||
apt-get -qq update
|
|
||||||
|
|
||||||
apt-get -qq install --no-install-recommends -y \
|
|
||||||
apt-transport-https \
|
|
||||||
gnupg \
|
|
||||||
wget \
|
|
||||||
procps vainfo \
|
|
||||||
unzip locales tzdata libxml2 xz-utils \
|
|
||||||
python3-pip \
|
|
||||||
curl \
|
|
||||||
jq \
|
|
||||||
nethogs
|
|
||||||
|
|
||||||
mkdir -p -m 600 /root/.gnupg
|
mkdir -p -m 600 /root/.gnupg
|
||||||
|
|
||||||
# enable non-free repo
|
# enable non-free repo
|
||||||
10
docker/rpi/rpi.mk
Normal file
10
docker/rpi/rpi.mk
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
BOARDS += rpi
|
||||||
|
|
||||||
|
local-rpi: version
|
||||||
|
docker buildx build --tag frigate:latest-rpi --load --file docker/build/rpi/Dockerfile .
|
||||||
|
|
||||||
|
build-rpi:
|
||||||
|
docker buildx build --platform linux/arm64 --tag $(IMAGE_REPO):${VERSION}-$(COMMIT_HASH)-rpi --file docker/build/rpi/Dockerfile .
|
||||||
|
|
||||||
|
push-rpi: build-rpi
|
||||||
|
docker buildx build --push --platform linux/arm64 --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH)-rpi --file docker/build/rpi/Dockerfile .
|
||||||
47
docker/tensorrt/Dockerfile
Normal file
47
docker/tensorrt/Dockerfile
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
# syntax = edrevo/dockerfile-plus
|
||||||
|
INCLUDE+ docker/main/Dockerfile
|
||||||
|
|
||||||
|
# https://askubuntu.com/questions/972516/debian-frontend-environment-variable
|
||||||
|
ARG DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
# Make this a separate target so it can be built/cached optionally
|
||||||
|
FROM wheels as trt-wheels
|
||||||
|
ARG DEBIAN_FRONTEND
|
||||||
|
ARG TARGETARCH
|
||||||
|
|
||||||
|
# Add TensorRT wheels to another folder
|
||||||
|
COPY requirements-tensorrt.txt /requirements-tensorrt.txt
|
||||||
|
RUN mkdir -p /trt-wheels && pip3 wheel --wheel-dir=/trt-wheels -r requirements-tensorrt.txt
|
||||||
|
|
||||||
|
# Build TensorRT-specific library
|
||||||
|
FROM nvcr.io/nvidia/tensorrt:23.03-py3 AS trt-deps
|
||||||
|
|
||||||
|
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 frigate AS frigate-tensorrt
|
||||||
|
|
||||||
|
#Disable S6 Global timeout
|
||||||
|
ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
|
||||||
|
|
||||||
|
ENV TRT_VER=8.5.3
|
||||||
|
ENV YOLO_MODELS="yolov7-tiny-416"
|
||||||
|
|
||||||
|
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/ /
|
||||||
|
|
||||||
|
RUN --mount=type=bind,from=trt-wheels,source=/trt-wheels,target=/deps/trt-wheels \
|
||||||
|
pip3 install -U /deps/trt-wheels/*.whl && \
|
||||||
|
ldconfig
|
||||||
|
|
||||||
|
# Dev Container w/ TRT
|
||||||
|
FROM devcontainer AS devcontainer-trt
|
||||||
|
|
||||||
|
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/ /
|
||||||
|
COPY --from=trt-deps /usr/local/lib/libyolo_layer.so /usr/local/lib/libyolo_layer.so
|
||||||
|
RUN --mount=type=bind,from=trt-wheels,source=/trt-wheels,target=/deps/trt-wheels \
|
||||||
|
pip3 install -U /deps/trt-wheels/*.whl
|
||||||
10
docker/tensorrt/trt.mk
Normal file
10
docker/tensorrt/trt.mk
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
BOARDS += trt
|
||||||
|
|
||||||
|
local-trt: version
|
||||||
|
docker buildx build --tag frigate:latest-tensorrt --load --file docker/build/tensorrt/Dockerfile .
|
||||||
|
|
||||||
|
build-trt:
|
||||||
|
docker buildx build --platform linux/amd64 --tag $(IMAGE_REPO):${VERSION}-$(COMMIT_HASH)-tensorrt --file docker/build/trt/Dockerfile .
|
||||||
|
|
||||||
|
push-trt: build-trt
|
||||||
|
docker buildx build --push --platform linux/arm64 --tag $(IMAGE_REPO):${GITHUB_REF_NAME}-$(COMMIT_HASH)-tensorrt --file docker/build/rpi/Dockerfile .
|
||||||
Loading…
Reference in New Issue
Block a user