2020-10-08 00:25:54 +03:00
|
|
|
default_target: amd64_frigate
|
|
|
|
|
|
2021-01-13 21:02:44 +03:00
|
|
|
COMMIT_HASH := $(shell git log -1 --pretty=format:"%h"|tail -1)
|
2020-12-19 15:51:10 +03:00
|
|
|
|
|
|
|
|
version:
|
2021-10-06 14:11:36 +03:00
|
|
|
echo "VERSION='0.10.0-$(COMMIT_HASH)'" > frigate/version.py
|
2020-12-19 15:51:10 +03:00
|
|
|
|
2021-01-09 20:26:46 +03:00
|
|
|
web:
|
2021-01-15 16:53:44 +03:00
|
|
|
docker build --tag frigate-web --file docker/Dockerfile.web web/
|
2021-01-09 20:26:46 +03:00
|
|
|
|
2020-10-08 00:25:54 +03:00
|
|
|
amd64_wheels:
|
2021-02-18 16:13:10 +03:00
|
|
|
docker build --tag blakeblackshear/frigate-wheels:1.0.3-amd64 --file docker/Dockerfile.wheels .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
|
|
|
|
amd64_ffmpeg:
|
2021-06-26 21:58:21 +03:00
|
|
|
docker build --no-cache --pull --tag blakeblackshear/frigate-ffmpeg:1.2.0-amd64 --file docker/Dockerfile.ffmpeg.amd64 .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2021-05-18 09:27:45 +03:00
|
|
|
nginx_frigate:
|
2022-01-11 12:34:44 +03:00
|
|
|
docker buildx build --push --platform linux/arm/v7,linux/arm64/v8,linux/amd64 --tag blakeblackshear/frigate-nginx:1.0.2 --file docker/Dockerfile.nginx .
|
2021-05-18 08:52:08 +03:00
|
|
|
|
2021-05-30 18:31:25 +03:00
|
|
|
amd64_frigate: version web
|
2021-07-13 04:54:12 +03:00
|
|
|
docker build --no-cache --tag frigate-base --build-arg ARCH=amd64 --build-arg FFMPEG_VERSION=1.1.0 --build-arg WHEELS_VERSION=1.0.3 --build-arg NGINX_VERSION=1.0.2 --file docker/Dockerfile.base .
|
2021-07-03 17:50:55 +03:00
|
|
|
docker build --no-cache --tag frigate --file docker/Dockerfile.amd64 .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
|
|
|
|
amd64_all: amd64_wheels amd64_ffmpeg amd64_frigate
|
|
|
|
|
|
2020-11-07 20:57:10 +03:00
|
|
|
amd64nvidia_wheels:
|
2021-02-18 16:13:10 +03:00
|
|
|
docker build --tag blakeblackshear/frigate-wheels:1.0.3-amd64nvidia --file docker/Dockerfile.wheels .
|
2020-11-07 20:57:10 +03:00
|
|
|
|
|
|
|
|
amd64nvidia_ffmpeg:
|
2021-07-03 18:08:32 +03:00
|
|
|
docker build --no-cache --pull --tag blakeblackshear/frigate-ffmpeg:1.2.0-amd64nvidia --file docker/Dockerfile.ffmpeg.amd64nvidia .
|
2020-11-07 20:57:10 +03:00
|
|
|
|
2021-05-30 18:31:25 +03:00
|
|
|
amd64nvidia_frigate: version web
|
2021-07-13 04:54:12 +03:00
|
|
|
docker build --no-cache --tag frigate-base --build-arg ARCH=amd64nvidia --build-arg FFMPEG_VERSION=1.0.0 --build-arg WHEELS_VERSION=1.0.3 --build-arg NGINX_VERSION=1.0.2 --file docker/Dockerfile.base .
|
2021-07-03 17:50:55 +03:00
|
|
|
docker build --no-cache --tag frigate --file docker/Dockerfile.amd64nvidia .
|
2020-11-07 20:57:10 +03:00
|
|
|
|
|
|
|
|
amd64nvidia_all: amd64nvidia_wheels amd64nvidia_ffmpeg amd64nvidia_frigate
|
|
|
|
|
|
2020-10-18 18:42:01 +03:00
|
|
|
aarch64_wheels:
|
2021-02-18 16:13:10 +03:00
|
|
|
docker build --tag blakeblackshear/frigate-wheels:1.0.3-aarch64 --file docker/Dockerfile.wheels .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2020-10-18 18:42:01 +03:00
|
|
|
aarch64_ffmpeg:
|
2021-09-25 16:25:00 +03:00
|
|
|
docker build --no-cache --pull --tag blakeblackshear/frigate-ffmpeg:1.3.0-aarch64 --file docker/Dockerfile.ffmpeg.aarch64 .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2022-01-11 12:34:44 +03:00
|
|
|
aarch64_frigate: version web
|
|
|
|
|
docker build --no-cache --tag frigate-base --build-arg ARCH=aarch64 --build-arg FFMPEG_VERSION=1.0.0 --build-arg WHEELS_VERSION=1.0.3 --build-arg NGINX_VERSION=1.0.2 --file docker/Dockerfile.base .
|
2021-07-03 17:50:55 +03:00
|
|
|
docker build --no-cache --tag frigate --file docker/Dockerfile.aarch64 .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2021-09-03 15:13:05 +03:00
|
|
|
aarch64_all: aarch64_wheels aarch64_ffmpeg aarch64_frigate
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2022-01-11 12:30:05 +03:00
|
|
|
aarch64_l4t_assets:
|
2021-12-28 14:53:47 +03:00
|
|
|
mkdir -p $$(pwd)/.l4t_assets
|
|
|
|
|
cp ./converters/yolo4/plugin/* .l4t_assets/
|
|
|
|
|
cp ./converters/yolo4/model/yolov4-tiny-416.trt .l4t_assets/yolov4-tiny-416.trt
|
|
|
|
|
cp ./converters/yolo4/model/yolov4-tiny-288.trt .l4t_assets/yolov4-tiny-288.trt
|
|
|
|
|
# cp ./converters/yolo4/model/yolov4-416.trt .l4t_assets/yolov4-416.trt
|
|
|
|
|
# cp ./converters/yolo4/model/yolov4-288.trt .l4t_assets/yolov4-288.trt
|
|
|
|
|
|
2022-01-11 12:30:05 +03:00
|
|
|
aarch64_l4t_wheels:
|
|
|
|
|
@docker build --tag frigate-wheels-l4t --file docker/Dockerfile.wheels.l4t .
|
|
|
|
|
# Run l4t wheels using nvidia runtime
|
|
|
|
|
@docker rm frigate.wheels.l4t || true
|
|
|
|
|
@docker run --name frigate.wheels.l4t -it --runtime=nvidia -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=compute,utility,video --privileged frigate-wheels-l4t
|
|
|
|
|
# Commit changes to the container
|
|
|
|
|
@CONTAINER_ID=`docker ps -n 1 --format "{{.ID}}"`
|
|
|
|
|
@docker commit $$CONTAINER_ID frigate.wheels.l4t frigate-wheels-l4t:latest
|
|
|
|
|
@docker rm frigate.wheels.l4t || true
|
|
|
|
|
|
|
|
|
|
aarch64_l4t_frigate: # aarch64_l4t_wheels aarch64_l4t_assets
|
2022-01-11 12:34:44 +03:00
|
|
|
docker build --tag frigate-base-l4t --build-arg BASE_IMAGE=timongentzsch/l4t-ubuntu20-opencv:latest --build-arg FFMPEG_ARCH=arm64 --build-arg ARCH=aarch64 --build-arg WHEELS_VERSION=1.0.3 --build-arg NGINX_VERSION=1.0.2 --file docker/Dockerfile.base .
|
2022-01-11 12:30:05 +03:00
|
|
|
nvidia-docker build --tag frigate.l4t --build-arg NGINX_VERSION=1.0.2 --file docker/Dockerfile.aarch64.l4t .
|
2021-12-28 14:53:47 +03:00
|
|
|
|
|
|
|
|
|
2020-10-18 18:42:01 +03:00
|
|
|
armv7_wheels:
|
2021-02-18 16:13:10 +03:00
|
|
|
docker build --tag blakeblackshear/frigate-wheels:1.0.3-armv7 --file docker/Dockerfile.wheels .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2020-10-18 18:42:01 +03:00
|
|
|
armv7_ffmpeg:
|
2022-01-11 12:34:44 +03:00
|
|
|
docker build --no-cache --pull --tag blakeblackshear/frigate-ffmpeg:1.2.0-armv7 --file docker/Dockerfile.ffmpeg.armv7 .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2021-05-30 18:31:25 +03:00
|
|
|
armv7_frigate: version web
|
2021-07-13 04:54:12 +03:00
|
|
|
docker build --no-cache --tag frigate-base --build-arg ARCH=armv7 --build-arg FFMPEG_VERSION=1.0.0 --build-arg WHEELS_VERSION=1.0.3 --build-arg NGINX_VERSION=1.0.2 --file docker/Dockerfile.base .
|
2021-07-03 17:50:55 +03:00
|
|
|
docker build --no-cache --tag frigate --file docker/Dockerfile.armv7 .
|
2020-10-08 00:25:54 +03:00
|
|
|
|
2020-10-18 18:42:01 +03:00
|
|
|
armv7_all: armv7_wheels armv7_ffmpeg armv7_frigate
|
2021-01-09 20:26:46 +03:00
|
|
|
|
2022-01-14 16:31:25 +03:00
|
|
|
run_tests:
|
|
|
|
|
# PLATFORM: linux/arm64/v8 linux/amd64 or linux/arm/v7
|
|
|
|
|
# ARCH: aarch64 amd64 or armv7
|
|
|
|
|
@cat docker/Dockerfile.base docker/Dockerfile.$(ARCH) > docker/Dockerfile.test
|
|
|
|
|
@sed -i "s/FROM frigate-web as web/#/g" docker/Dockerfile.test
|
|
|
|
|
@sed -i "s/COPY --from=web \/opt\/frigate\/build web\//#/g" docker/Dockerfile.test
|
|
|
|
|
@sed -i "s/FROM frigate-base/#/g" docker/Dockerfile.test
|
|
|
|
|
@echo "" >> docker/Dockerfile.test
|
|
|
|
|
@echo "RUN python3 -m unittest" >> docker/Dockerfile.test
|
|
|
|
|
@docker buildx build --platform=$(PLATFORM) --tag frigate-base --build-arg NGINX_VERSION=1.0.2 --build-arg FFMPEG_VERSION=1.0.0 --build-arg ARCH=$(ARCH) --build-arg WHEELS_VERSION=1.0.3 --file docker/Dockerfile.test .
|
|
|
|
|
@rm docker/Dockerfile.test
|
|
|
|
|
|
|
|
|
|
.PHONY: web run_tests
|