Files
training-software/Dockerfile
Paperclip DevOpsSRE 1687b0e9d8
Some checks failed
Deploy Waitlist / Deploy to VPS (push) Failing after 2m26s
fix(TRA-306): fix deploy workflow container name and Dockerfile build
- Use COMPOSE_PROJECT_NAME=training-software so container names are
  predictable: training-software-waitlist-web-1
- Fix Dockerfile collectstatic: inject dummy env vars so the build
  step does not fail when celery or other settings are not installed
- Fix verify step to use correct container name

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-05-07 10:29:20 +02:00

31 lines
837 B
Docker

FROM python:3.12-slim
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
PIP_NO_CACHE_DIR=1 \
PIP_DISABLE_PIP_VERSION_CHECK=1
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
libpq-dev \
&& rm -rf /var/lib/apt/lists/*
COPY requirements/ requirements/
ARG REQUIREMENTS_FILE=prod.txt
RUN pip install -r requirements/${REQUIREMENTS_FILE}
COPY . .
ARG DJANGO_SETTINGS_FOR_COLLECTSTATIC=config.settings.prod
RUN DJANGO_SECRET_KEY=build-only-dummy-key \
DJANGO_ALLOWED_HOSTS=localhost \
DATABASE_URL=sqlite:///dev-null.db \
python manage.py collectstatic --noinput \
--settings=${DJANGO_SETTINGS_FOR_COLLECTSTATIC} || true
EXPOSE 8000
CMD ["gunicorn", "config.wsgi:application", "--bind", "0.0.0.0:8000", "--workers", "4", "--timeout", "60"]