aboutsummaryrefslogtreecommitdiffstats
path: root/Dockerfile
diff options
context:
space:
mode:
authorkj_sh6042026-03-11 22:47:32 -0400
committerkj_sh6042026-03-11 22:47:32 -0400
commitfe9d6171de63ce839b01eade15ddcb6bb14e06f8 (patch)
treeb975b438194c93d9df98d33f4085ad16f193e45e /Dockerfile
parentd151ec91488f10134babae4d4a879d823b221b62 (diff)
refactor: prod-level changes
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile18
1 files changed, 14 insertions, 4 deletions
diff --git a/Dockerfile b/Dockerfile
index e87147d..8ff9c84 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,13 +1,18 @@
FROM python:3.12-slim
-ENV DEBIAN_FRONTEND=noninteractive
+ENV DEBIAN_FRONTEND=noninteractive \
+ PYTHONDONTWRITEBYTECODE=1 \
+ PYTHONUNBUFFERED=1 \
+ PORT=5001 \
+ HOST=0.0.0.0 \
+ LOG_LEVEL=INFO \
+ TRUST_PROXY=1
RUN apt-get update && apt-get install -y --no-install-recommends \
libcairo2 \
libpango-1.0-0 \
libpangocairo-1.0-0 \
libgdk-pixbuf-2.0-0 \
- libffi-dev \
shared-mime-info \
fonts-noto \
fonts-noto-color-emoji \
@@ -15,13 +20,18 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
WORKDIR /app
+RUN addgroup --system app && adduser --system --ingroup app app
+
COPY requirements.txt .
-RUN pip install --no-cache-dir -r requirements.txt
+RUN pip install --no-cache-dir --disable-pip-version-check -r requirements.txt
COPY src/ .
RUN mkdir -p generated uploads
+RUN chown -R app:app /app
+USER app
+
EXPOSE 5001
-CMD ["python3", "app.py"]
+CMD ["gunicorn", "--bind", "0.0.0.0:5001", "--workers", "2", "--threads", "4", "--timeout", "180", "--graceful-timeout", "30", "--access-logfile", "-", "--error-logfile", "-", "app:app"]