使用 unix socket 运行 Uvicorn

mrc*_*nut 4 uwsgi systemd

我在 unix 套接字上运行 uvicorn 时遇到问题...

我已经尝试了以下以及我能想到的所有组合,无论是在命令行还是在 systemd 单元文件中......

env/bin/uvicorn appname.asgi:application --uds unix:/run/uvicorn/appname.sock和每个其他组合产生一个FileNotFoundError: [Errno 2] No such file or directory,但目录在那里......

我在这里错过了什么吗?我不是 Ubuntu 或 systemd 的专家,但我能够很容易地设置 Nginx 和 uWSGI。

mrc*_*nut 7

嗯......事实证明,它比我简单得多:

解决方案是不使用unix:前缀,只使用套接字的位置,例如:

venv/bin/uvicorn appname.asgi:application --uds /run/uvicorn/appname.sock
Run Code Online (Sandbox Code Playgroud)