Dockerfile.base 1.8 KB

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