# syntax=docker/dockerfile:1.7 FROM python:3.13-slim-trixie ARG VCS_REF=unknown ARG APP_VERSION=dev LABEL org.opencontainers.image.source="https://gitea.itworx.tech/Jens/VacatureRadar" \ org.opencontainers.image.revision=$VCS_REF \ org.opencontainers.image.version=$APP_VERSION ENV PYTHONDONTWRITEBYTECODE=1 \ PYTHONUNBUFFERED=1 \ UV_COMPILE_BYTECODE=1 \ UV_LINK_MODE=copy \ UV_DEFAULT_INDEX=https://pypi.org/simple \ PATH="/app/.venv/bin:$PATH" RUN apt-get update \ && apt-get install -y --no-install-recommends curl ca-certificates libpq5 postgresql redis-server supervisor \ && rm -rf /var/lib/apt/lists/* COPY --from=ghcr.io/astral-sh/uv:0.10.0 /uv /uvx /bin/ WORKDIR /app RUN addgroup --system app \ && adduser --system --ingroup app --home /app --no-create-home app COPY pyproject.toml uv.lock ./ RUN uv sync --frozen --no-dev --no-install-project COPY . . RUN uv sync --frozen --no-dev \ && chmod +x scripts/*.sh \ && DJANGO_DEBUG=0 \ DJANGO_SECRET_KEY=build-only-static-manifest-key-not-used-at-runtime-000000000000 \ PUBLIC_BASE_URL=https://build.invalid \ python manage.py collectstatic --noinput \ && mkdir -p /app/media /app/logs /app/local /var/log/supervisor \ && chown -R app:app /app EXPOSE 8080 ENTRYPOINT ["/app/scripts/unraid_aio_entrypoint.sh"]