【发布时间】:2020-01-30 02:07:47
【问题描述】:
所以我在这个 python 聊天应用项目中使用了一个 docker。
我最初在 docker-compose 中使用 python manage.py runserver 0.0.0.0:8000 作为我的命令。
我发现如果我想在 web 上部署我的应用程序(比如 heroku),我应该切换到 gunicorn。我发现的教程说只需将 docker-compose 中的命令更改为gunicorn myproject.wsgi -b 0.0.0.0:8000。我这样做了,所有的 websocket 连接都断开了。由于 websocket 仍处于 CONNECTING 状态,发送失败,然后握手失败,状态码为 404。所有设置都与以前相同,除了一行。只是想知道我还需要更改什么才能使 websocket 与 gunicorn 一起工作?谢谢
编辑:在互联网上进行一些挖掘之后,gunicorn 似乎不应该与 websocket 一起运行(我想是 wsgi asgi 的区别?)如果有人能告诉我一些我可以使用的东西,而不是 gunicorn 用于网络服务器,那就是非常感谢,或者如果我有什么方法可以在我的 django 频道仍然工作的情况下运行 gunicorn?谢谢!!
【问题讨论】:
标签: python django docker websocket gunicorn