X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/0223d24d13749490a4a85bd943b12f020a7e1e83..111a23185d6f47f692540fb145dc5604c47aee67:/Dockerfile diff --git a/Dockerfile b/Dockerfile index 08ec72375..d9a71d9b0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,7 +12,7 @@ # Global build arguments. Stages using UID/GID must redeclare them # (bare `ARG UID`) to bring them into scope; the defaults are set here. -ARG PYTHON_IMAGE=python:3.10-trixie +ARG PYTHON_IMAGE=python:3.12-trixie ARG UID=8100 ARG GID=8100 @@ -40,15 +40,16 @@ RUN apt-get update && apt-get install -y \ texlive-fonts-extra-links \ fonts-noto-core fonts-noto-extra +# Install dart-sass for compiling SCSS. +ARG DART_SASS_VERSION=1.108.1 +RUN arch=$(dpkg --print-architecture | sed 's/amd64/x64/') && \ + curl -fsSL "https://github.com/sass/dart-sass/releases/download/${DART_SASS_VERSION}/dart-sass-${DART_SASS_VERSION}-linux-${arch}.tar.gz" \ + | tar xz -C /opt COPY requirements/requirements.txt requirements.txt RUN --mount=type=cache,target=/root/.cache/pip \ pip install -r requirements.txt -RUN --mount=type=cache,target=/root/.cache/pip \ - pip install \ - psycopg2-binary \ - django-debug-toolbar==3.2.2 RUN addgroup --gid $GID app && \ adduser --gid $GID --home /app --uid $UID app @@ -92,6 +93,11 @@ COPY src /app/src # FROM app AS static-builder +# django-pipeline compiler creates temp dirs in place. Let it. +USER root +RUN find /app/src/*/static -type d -exec chown app {} + +USER app + RUN python manage.py collectstatic --noinput