From 9f8be6d52d1e4e8f43338c77014c0c03085703c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexis=20M=C3=A9taireau?= Date: Thu, 24 Oct 2024 01:18:41 +0200 Subject: [PATCH] Use granian as a WSGI server --- Dockerfile | 8 +++++--- docker/entrypoint.sh | 12 +++++++++--- docker/uwsgi.ini | 10 ---------- 3 files changed, 14 insertions(+), 16 deletions(-) delete mode 100644 docker/uwsgi.ini diff --git a/Dockerfile b/Dockerfile index 2032b7e..8487530 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,8 +31,7 @@ RUN apt-get install --no-install-recommends -y tzdata \ libgdk-pixbuf2.0-0 \ shared-mime-info \ gettext \ - tini \ - uwsgi + tini # Stage 2: Python environment FROM linux-base AS python-base @@ -52,6 +51,7 @@ COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv COPY pyproject.toml ./ COPY uv.lock ./ RUN uv sync --frozen --no-dev --no-install-project +RUN uv pip install granian # Stage 3: Building environment FROM python-base AS builder-base @@ -60,10 +60,12 @@ WORKDIR /app COPY . /app # Build static files +RUN python manage.py compilescss RUN python manage.py collectstatic --no-input # Compile translation files -RUN python manage.py compilemessages +# RUN python manage.py compilemessages + # Stage 4: Webapp environment FROM linux-base AS webapp diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh index 3d6d97c..0b9ea03 100755 --- a/docker/entrypoint.sh +++ b/docker/entrypoint.sh @@ -2,7 +2,13 @@ set -euxo pipefail echo "Migrate database..." -python manage.py migrate +python manage.py migrate --settings local_settings -echo "Start uwsgi..." -exec uwsgi --ini docker/uwsgi.ini +echo "Start server..." + +granian la_chariotte.wsgi:application \ + --host 127.0.0.1 \ + --port 8000 \ + --interface wsgi \ + --no-ws \ + --loop uvloop diff --git a/docker/uwsgi.ini b/docker/uwsgi.ini deleted file mode 100644 index 92dd00e..0000000 --- a/docker/uwsgi.ini +++ /dev/null @@ -1,10 +0,0 @@ -[uwsgi] -http = :$(PORT) -home = /venv -module = la_chariotte.wsgi:application -master = True -vacuum = True -max-requests = 5000 -processes = 4 -enable-threads = true -buffer-size = 32768