不能 运行 gunicorn 与 sys.argv --bind
Cannot run gunicorn with sys.argv --bind
我需要从 python 脚本为应用程序启动 gunicorn,我正在尝试 运行 gunicorn --bind 0.0.0.0:5000 tito.wsgi:application
。我尝试了以下方法:
import sys
sys.argv = ['--gunicorn']
sys.argv.append("--bind 0.0.0.0:5000")
sys.argv.append("myapp.execute:application")
WSGIApplication(
usage="%(prog)s [OPTIONS] [APP_MODULE]"
).run()
最后出现以下错误:
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
ModuleNotFoundError: No module named '--bind 0'
如果我运行为:
sys.argv = ['--gunicorn --bind 0.0.0.0:5000']
它不会获取 --bind 参数
这适用于 --bind
选项。如何以 --bind 0.0.0.0:5000
作为参数使这个 运行?
是使用 --bind
选项还是 IP 地址 0.0.0.0
的问题。
我猜您想为本地主机启动应用程序。您可以尝试使用 --bind=127.0.0.1:5000
看看它是否有效。
嗯,这 sys.argv.append("-b 0.0.0.0:5000")
成功了。它似乎将 --bind
识别为一个模块
我需要从 python 脚本为应用程序启动 gunicorn,我正在尝试 运行 gunicorn --bind 0.0.0.0:5000 tito.wsgi:application
。我尝试了以下方法:
import sys
sys.argv = ['--gunicorn']
sys.argv.append("--bind 0.0.0.0:5000")
sys.argv.append("myapp.execute:application")
WSGIApplication(
usage="%(prog)s [OPTIONS] [APP_MODULE]"
).run()
最后出现以下错误:
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 941, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 953, in _find_and_load_unlocked
ModuleNotFoundError: No module named '--bind 0'
如果我运行为:
sys.argv = ['--gunicorn --bind 0.0.0.0:5000']
它不会获取 --bind 参数
这适用于 --bind
选项。如何以 --bind 0.0.0.0:5000
作为参数使这个 运行?
是使用 --bind
选项还是 IP 地址 0.0.0.0
的问题。
我猜您想为本地主机启动应用程序。您可以尝试使用 --bind=127.0.0.1:5000
看看它是否有效。
嗯,这 sys.argv.append("-b 0.0.0.0:5000")
成功了。它似乎将 --bind
识别为一个模块