23 lines
534 B
Docker
23 lines
534 B
Docker
FROM python:3.12-slim
|
|
|
|
ENV PYTHONUNBUFFERED=1 \
|
|
BUTTON_HOST=0.0.0.0 \
|
|
BUTTON_PORT=8000 \
|
|
BUTTON_DATA_FILE=/data/data.json \
|
|
BUTTON_MAILING_LIST_FILE=/data/mailing_list.csv
|
|
|
|
RUN useradd --system --uid 10001 --no-create-home button \
|
|
&& mkdir /data && chown button /data
|
|
|
|
WORKDIR /app
|
|
COPY server.py ./
|
|
COPY static ./static
|
|
|
|
USER button
|
|
VOLUME /data
|
|
EXPOSE 8000
|
|
# Python as PID 1 ignores SIGTERM; SIGINT raises KeyboardInterrupt for a clean exit.
|
|
STOPSIGNAL SIGINT
|
|
|
|
CMD ["python", "server.py"]
|