Мое приложение Django отлично работало в Google App Engine (Flexible), используя пушку в качестве точки входа в файле app.yaml. Мне нужно было добавить к нему веб-сокеты, поэтому я использовал каналы Django (с Redis). Это прекрасно работает на моей локальной машине (Windows 10).
Для развертывания я изменил свою точку входа на daphne на порту 8080, так как это значение по умолчанию в GAE (использование $PORT дает тот же эффект), поэтому мой файл yaml теперь выглядит следующим образом:
runtime: python
env: flex
runtime_config:
python_version: 3
entrypoint: daphne -b 127.0.0.1 -p 8080 my_project_name.asgi:application
Я проверил файл .asgi и файл requirements.txt, чтобы убедиться, что все в порядке, а пакеты являются последними версиями.
Но после его развертывания я получаю ошибку "502 Bad Gateway Nginx"
.
Журналы Stackdriver (nginx.error) в облачной консоли GCP говорят следующее:
[error] 33#33: *341 connect() failed (111: Connection refused) while connecting
to upstream, client: 172.xxx.xxx.xxx, server: , request: "GET / HTTP/1.1",
upstream: "172.17.0.1:8080", host: "my_project_name.appspot.com"
Я не узнаю эти IP-адреса вышестоящего сервера или клиента и не знаю, что делать дальше. За последние 4 дня я пробовал множество вещей, в том числе:
используя разные порты (8000, 8001 и т. д.)
добавление файла nginx.conf (на основе этой документации) в каталог моего проекта , вроде без разницы
Добавление строки в разделе runtime_config файла yaml с надписью «nginx_conf_http_include: nginx.conf»
4. Использование сокетов Unix для запуска сервера daphne в точке входа, например «точка входа: daphne -u /tmp/daphne.sock my_project_name.asgi:application
- Удаление точки входа вообще после объявления сервера daphne в файле nginx.conf
Ничего из этого не помогает. Журналы остаются прежними, ошибка остается той же. Я прочитал такие вопросы, как this и this, но я не знаю, как применить их к GAE Flex, так как я не работаю напрямую с экземпляром виртуальной машины. Пожалуйста помоги.
daphne -b 127.0.0.1
может ограничивать локальные подключения, только вы устали0.0.0.0
? - person Matthaus Woolard   schedule 24.01.2020