由于目录命令中的点 (.),Supervisord 未启动
Supervisord not starting due to dot (.) in directory command
我正在尝试设置主管,但很难让它正常工作。
尝试启动时出现 ModuleNotFoundError: No module named '/home/username/projects/myproject-1'
错误:
[2021-03-09 10:57:00 +0000] [197792] [INFO] Starting gunicorn 20.0.4
[2021-03-09 10:57:00 +0000] [197792] [INFO] Listening at: unix:/home/username/projects/myproject-1.10/myproject.sock (197792)
[2021-03-09 10:57:00 +0000] [197792] [INFO] Using worker: sync
[2021-03-09 10:57:00 +0000] [197795] [INFO] Booting worker with pid: 197795
[2021-03-09 10:57:00 +0000] [197795] [ERROR] Exception in worker process
Traceback (most recent call last):
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
worker.init_process()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/workers/base.py", line 119, in init_process
self.load_wsgi()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
self.wsgi = self.app.wsgi()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/app/base.py", line 67, in wsgi
self.callable = self.load()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
return self.load_wsgiapp()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
return util.import_app(self.app_uri)
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/util.py", line 358, in import_app
mod = importlib.import_module(module)
File "/usr/local/lib/python3.6/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
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 '/home/username/projects/myproject-1'
[2021-03-09 10:57:00 +0000] [197795] [INFO] Worker exiting (pid: 197795)
[2021-03-09 10:57:00 +0000] [197792] [INFO] Shutting down: Master
[2021-03-09 10:57:00 +0000] [197792] [INFO] Reason: Worker failed to boot.
我的配置文件如下:
[program:myproject]
directory=/home/username/projects/myproject-1.10
autostart=true
autorestart=true
user=username
stderr_logfile=/var/log/myproject.err.log
stdout_logfile=/var/log/myproject.out.log
command=/home/username/.virtualenvs/myproject-3.6/bin/gunicorn --workers 5 --bind unix:/home/username/projects/myproject-1.10/myproject.sock /home/username/projects/myproject-1.10/myproject_project.wsgi:application
我尝试更改为 directory='/home/username/projects/myproject-1.10'
和 directory="/home/username/projects/myproject-1.10"
(单引号和双引号)和 rereading/reloading supervisord,但无济于事。
作为解决方法,我可以在我调用的 wsgi 中设置目录,但为什么主管不希望目录名称中有一个点?
问题不在于 supervisord 或所提供的目录,而在于所提供的命令。
command=/home/username/.virtualenvs/myproject-3.6/bin/gunicorn --workers 5 --bind unix:/home/username/projects/myproject-1.10/myproject.sock /home/username/projects/myproject-1.10/myproject_project.wsgi:application
最后一部分不应该包含目录;它应该只是 myproject_project.wsgi:application
。点被视为目录。根据 supervisord 配置,正确的目录已经 set/changed。
我正在尝试设置主管,但很难让它正常工作。
尝试启动时出现 ModuleNotFoundError: No module named '/home/username/projects/myproject-1'
错误:
[2021-03-09 10:57:00 +0000] [197792] [INFO] Starting gunicorn 20.0.4
[2021-03-09 10:57:00 +0000] [197792] [INFO] Listening at: unix:/home/username/projects/myproject-1.10/myproject.sock (197792)
[2021-03-09 10:57:00 +0000] [197792] [INFO] Using worker: sync
[2021-03-09 10:57:00 +0000] [197795] [INFO] Booting worker with pid: 197795
[2021-03-09 10:57:00 +0000] [197795] [ERROR] Exception in worker process
Traceback (most recent call last):
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker
worker.init_process()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/workers/base.py", line 119, in init_process
self.load_wsgi()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/workers/base.py", line 144, in load_wsgi
self.wsgi = self.app.wsgi()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/app/base.py", line 67, in wsgi
self.callable = self.load()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py", line 49, in load
return self.load_wsgiapp()
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/app/wsgiapp.py", line 39, in load_wsgiapp
return util.import_app(self.app_uri)
File "/home/username/.virtualenvs/myproject-3.6/lib/python3.6/site-packages/gunicorn/util.py", line 358, in import_app
mod = importlib.import_module(module)
File "/usr/local/lib/python3.6/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
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 '/home/username/projects/myproject-1'
[2021-03-09 10:57:00 +0000] [197795] [INFO] Worker exiting (pid: 197795)
[2021-03-09 10:57:00 +0000] [197792] [INFO] Shutting down: Master
[2021-03-09 10:57:00 +0000] [197792] [INFO] Reason: Worker failed to boot.
我的配置文件如下:
[program:myproject]
directory=/home/username/projects/myproject-1.10
autostart=true
autorestart=true
user=username
stderr_logfile=/var/log/myproject.err.log
stdout_logfile=/var/log/myproject.out.log
command=/home/username/.virtualenvs/myproject-3.6/bin/gunicorn --workers 5 --bind unix:/home/username/projects/myproject-1.10/myproject.sock /home/username/projects/myproject-1.10/myproject_project.wsgi:application
我尝试更改为 directory='/home/username/projects/myproject-1.10'
和 directory="/home/username/projects/myproject-1.10"
(单引号和双引号)和 rereading/reloading supervisord,但无济于事。
作为解决方法,我可以在我调用的 wsgi 中设置目录,但为什么主管不希望目录名称中有一个点?
问题不在于 supervisord 或所提供的目录,而在于所提供的命令。
command=/home/username/.virtualenvs/myproject-3.6/bin/gunicorn --workers 5 --bind unix:/home/username/projects/myproject-1.10/myproject.sock /home/username/projects/myproject-1.10/myproject_project.wsgi:application
最后一部分不应该包含目录;它应该只是 myproject_project.wsgi:application
。点被视为目录。根据 supervisord 配置,正确的目录已经 set/changed。