Приложение Django в docker с gunicorn выдает «Error handling request (no URI read)».
Я запускаю приложение django с помощью gunicorn в контейнере docker, но сталкиваюсь с ошибкой при запросе. Приложение не работает со следующим журналом ошибок:
[2024-11-13 18:50:11 +0000] [9] [ERROR] Error handling request (no URI read)
Traceback (most recent call last):
File "/usr/local/lib/python3.13/site-packages/gunicorn/workers/sync.py", line 133, in handle
req = next(parser)
...
SystemExit: 1
Но в итоге запрос обрабатывается и ответ приходит, но на это требуется время.
Вот докерфайл mt:
FROM python:3.13.0-alpine3.20
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
WORKDIR /app
RUN apk update && \
apk add --no-cache jq python3-dev build-base gcc jpeg-dev zlib-dev libpq-dev
COPY Pipfile.lock .
RUN jq -r '.default | to_entries[] | .key + .value.version ' Pipfile.lock > requirements.txt && \
pip install -r requirements.txt
COPY . .
ENTRYPOINT ["sh", "./entrypoint.sh"]
Вот мой docker-compose.yml:
services:
app:
build: .
container_name: app
volumes:
- .:/app
- ./src/media:/app/src/media
ports:
- "8000:8000"
depends_on:
- db
env_file:
- .env
restart: always
db:
image: postgres:17.0-alpine3.20
container_name: postgres_db
volumes:
- postgres_data:/var/lib/postgresql/data
env_file:
- .env
restart: always
volumes:
postgres_data:
Я запускаю gunicorn с помощью этой команды:
gunicorn config.wsgi:application --bind 0.0.0.0:8000
Как решить эту проблему? Спасибо!