-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
48 lines (36 loc) · 1.09 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# syntax=docker/dockerfile:1
FROM python:3.11 AS base
LABEL org.opencontainers.image.authors="mex@rki.de"
LABEL org.opencontainers.image.description="Data upload and download service for the MEx project."
LABEL org.opencontainers.image.licenses="MIT"
LABEL org.opencontainers.image.url="https://github.com/robert-koch-institut/mex-drop"
LABEL org.opencontainers.image.vendor="robert-koch-institut"
ENV PYTHONUNBUFFERED=1
ENV PYTHONOPTIMIZE=1
ENV PIP_DISABLE_PIP_VERSION_CHECK=on
ENV PIP_NO_INPUT=on
ENV PIP_PREFER_BINARY=on
ENV PIP_PROGRESS_BAR=off
ENV APP_NAME=mex
ENV FRONTEND_PORT=8020
ENV DEPLOY_URL=http://0.0.0.0:8020
ENV BACKEND_PORT=8021
ENV API_URL=http://0.0.0.0:8021
ENV TELEMETRY_ENABLED=False
ENV REFLEX_ENV_MODE=prod
ENV REFLEX_DIR=/app/reflex
WORKDIR /app
RUN adduser \
--disabled-password \
--gecos "" \
--shell "/sbin/nologin" \
--no-create-home \
--uid "10001" \
mex && \
chown mex .
COPY --chown=mex . .
RUN --mount=type=cache,target=/root/.cache/pip pip install -r locked-requirements.txt --no-deps
USER mex
EXPOSE 8020
EXPOSE 8021
ENTRYPOINT [ "drop" ]