Files
labhelper/Dockerfile
Adrian A. Baumann 826bddf346
Some checks failed
Build containers when image tags change / build-if-image-changed (., web, containers, main container, git.baumann.gr/adebaumann/labhelper) (push) Successful in 51s
Build containers when image tags change / build-if-image-changed (data-loader, loader, initContainers, init-container, git.baumann.gr/adebaumann/labhelper-data-loader) (push) Successful in 7s
SonarQube Scan / SonarQube Trigger (push) Failing after 17s
Add full WebP library support (demux/mux)
2025-12-28 21:47:14 +01:00

52 lines
1.4 KiB
Docker

FROM python:3.14 AS baustelle
RUN mkdir /app
WORKDIR /app
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
RUN pip install --upgrade pip
COPY requirements.txt /app/
RUN pip install --no-cache-dir -r requirements.txt
FROM python:3.14-slim
RUN apt-get update && \
apt-get install -y --no-install-recommends \
libjpeg62-turbo \
libopenjp2-7 \
libtiff6 \
libwebp7 \
libwebpdemux2 \
libwebpmux3 \
libxcb1 \
libfreetype6 \
liblcms2-2 \
libharfbuzz0b \
libfribidi0 \
zlib1g && \
rm -rf /var/lib/apt/lists/* && \
useradd -m -r appuser && \
mkdir /app && \
chown -R appuser /app
COPY --from=baustelle /usr/local/lib/python3.14/site-packages/ /usr/local/lib/python3.14/site-packages/
COPY --from=baustelle /usr/local/bin/ /usr/local/bin/
RUN rm /usr/bin/tar /usr/lib/x86_64-linux-gnu/libncur*
WORKDIR /app
COPY --chown=appuser:appuser . .
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
USER appuser
EXPOSE 8000
RUN rm -rvf /app/Dockerfile* \
/app/README.md \
/app/argocd \
/app/k8s \
/app/data-loader \
/app/keys \
/app/requirements.txt \
/app/node_modules \
/app/*.json \
/app/test_*.py && \
python3 /app/manage.py collectstatic --noinput
CMD ["gunicorn","--bind","0.0.0.0:8000","--workers","3","labhelper.wsgi:application"]