Dockerfile 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. ARG PYVERSION=3.11
  2. ARG RELEASE=slim-bullseye
  3. FROM python:$PYVERSION-$RELEASE
  4. LABEL maintainer="Kirill Vercetti <office@kyzima-spb.com>"
  5. STOPSIGNAL SIGINT
  6. EXPOSE 5000
  7. ENV DEBIAN_FRONTEND noninteractive
  8. ENV PYTHONPATH "/python_packages:/project"
  9. ENV USER_UID 1000
  10. ENV USER_GID 1000
  11. ENV FASTAPI_APP app:app
  12. ENV FASTAPI_DEBUG 0
  13. WORKDIR /app
  14. RUN set -ex \
  15. && apt update \
  16. && apt install -yq --no-install-recommends \
  17. gettext-base \
  18. gosu \
  19. && pip install \
  20. --no-cache-dir \
  21. --disable-pip-version-check \
  22. fastapi \
  23. "uvicorn[standard]" \
  24. pythoninfo \
  25. && apt-get clean \
  26. && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
  27. RUN set -ex \
  28. && groupadd -g 1000 user \
  29. && useradd -u 1000 -g user -s /bin/bash -m user
  30. ARG USEFUL_URL="https://kyzima-spb.github.io/docker-useful/"
  31. ADD $USEFUL_URL/switch-user/switch-user.sh /usr/local/bin/
  32. RUN set -ex \
  33. && chmod 755 /usr/local/bin/*.sh
  34. COPY ./root /
  35. ENTRYPOINT ["docker-entrypoint.sh"]
  36. CMD ["runserver"]