Страница изменения заказа django oscar не загружается. получаем 502 Bad Gateway
Я получаю 502 Bad Gateway. Я использую приложение django oscar. Оно работает на docker. У меня также есть nginx, настроенный в контейнере. Все остальные страницы работают, кроме страницы изменения заказа. http://localhost:888/admin/order/order/60/change/ Когда я заглянул в журналы gunicorn, он показывает [CRITICAL] WORKER TIMEOUT. Может быть, утечка памяти или бесконечный цикл? Но я не вижу ни трассировки стека, ни места, где он получает эту ошибку. Как мне отладить это? Это очень большое приложение. Любая помощь будет оценена по достоинству.
version: '3'
services:
web:
restart: unless-stopped
build:
dockerfile: local.Dockerfile
context: ./src
working_dir: /opt/supplyme_core
command: |
sh -c "
while ! timeout 1 bash -c 'cat < /dev/null > /dev/tcp/db/5432'; do sleep 1; done
while ! timeout 1 bash -c 'cat < /dev/null > /dev/tcp/e_search/9200'; do sleep 1; done
python manage.py collectstatic --noinput
/usr/local/bin/gunicorn project.wsgi:application --timeout 300 -w 2 -b 0.0.0.0:888 & \
python service_runner.py api.web.service -c /opt/supplyme_core/api/conf/local_config.yml"
ports:
- "0.0.0.0:2220:22"
volumes:
- ./src/supplyme_core:/opt/supplyme_core
- ./.pycharm_helpers:/root/.pycharm_helpers
- public:/opt/public
- ./src/scripts/local/freeze.py:/opt/freeze.py:ro
- ./.ssh:/root/.ssh
db:
restart: unless-stopped
build:
context: ./pg/x64
environment:
POSTGRES_PASSWORD: postgres
expose:
- "5432"
ports:
- "0.0.0.0:5432:5432"
e_search:
restart: unless-stopped
build: ./elastic
environment:
- discovery.type=single-node
- xpack.security.enabled=false
- xpack.monitoring.enabled=false
- xpack.watcher.enabled=false
expose:
- "9200"
kibana:
image: kibana:7.14.1
expose:
- "5601"
environment:
ELASTICSEARCH_URL: http://e_search:9200
ELASTICSEARCH_HOSTS: http://e_search:9200
redis:
image: redis:3.2.8-alpine
restart: unless-stopped
command:
- redis-server
- --bind
- 0.0.0.0
- --port
- "6379"
- --maxmemory
- "64mb"
- --tcp-keepalive
- "0"
- --protected-mode
- "no"
hostname: redis
ng:
restart: unless-stopped
build: ./nginx/local
volumes:
- ./nginx/local/nginx.conf:/etc/nginx/nginx.conf:ro
- ./nginx/local/.htpasswd:/etc/nginx/.htpasswd:ro
- public:/opt/public
depends_on:
- web
ports:
- "0.0.0.0:880:880"
- "0.0.0.0:888:888"
- "0.0.0.0:3000:3000"
- "0.0.0.0:5601:5601"
volumes:
public: