Dockerfile.base 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. ARG ARCH=amd64
  2. FROM blakeblackshear/frigate-wheels:${ARCH} as wheels
  3. FROM blakeblackshear/frigate-ffmpeg:${ARCH} as ffmpeg
  4. FROM ubuntu:20.04
  5. LABEL maintainer "blakeb@blakeshome.com"
  6. COPY --from=ffmpeg /usr/local /usr/local/
  7. COPY --from=wheels /wheels/. /wheels/
  8. ENV FLASK_ENV=development
  9. # ENV FONTCONFIG_PATH=/etc/fonts
  10. ENV DEBIAN_FRONTEND=noninteractive
  11. # Install packages for apt repo
  12. RUN apt-get -qq update \
  13. && apt-get upgrade -y \
  14. && apt-get -qq install --no-install-recommends -y \
  15. gnupg wget unzip tzdata nginx libnginx-mod-rtmp \
  16. && apt-get -qq install --no-install-recommends -y \
  17. python3-pip \
  18. && pip3 install -U /wheels/*.whl \
  19. && APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn apt-key adv --fetch-keys https://packages.cloud.google.com/apt/doc/apt-key.gpg \
  20. && echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" > /etc/apt/sources.list.d/coral-edgetpu.list \
  21. && echo "libedgetpu1-max libedgetpu/accepted-eula select true" | debconf-set-selections \
  22. && apt-get -qq update && apt-get -qq install --no-install-recommends -y \
  23. libedgetpu1-max=15.0 \
  24. && rm -rf /var/lib/apt/lists/* /wheels \
  25. && (apt-get autoremove -y; apt-get autoclean -y)
  26. RUN pip3 install \
  27. peewee \
  28. zeroconf \
  29. voluptuous
  30. COPY nginx/nginx.conf /etc/nginx/nginx.conf
  31. # get model and labels
  32. ARG MODEL_REFS=7064b94dd5b996189242320359dbab8b52c94a84
  33. COPY labelmap.txt /labelmap.txt
  34. RUN wget -q https://github.com/google-coral/edgetpu/raw/$MODEL_REFS/test_data/ssd_mobilenet_v2_coco_quant_postprocess_edgetpu.tflite -O /edgetpu_model.tflite
  35. RUN wget -q https://github.com/google-coral/edgetpu/raw/$MODEL_REFS/test_data/ssd_mobilenet_v2_coco_quant_postprocess.tflite -O /cpu_model.tflite
  36. WORKDIR /opt/frigate/
  37. ADD frigate frigate/
  38. COPY run.sh /run.sh
  39. RUN chmod +x /run.sh
  40. EXPOSE 5000
  41. EXPOSE 1935
  42. CMD ["/run.sh"]