nginxを使用していて 実行環境は ssh接続し、仮想環境に入っている状態です。
pythonは3.6.8 pip3 install fabric3で導入
fabfile.pyを作成する前は
gunicorn -c gunicorn.conf.py microblog.wsgi
を実行すると,ipアドレスでWeb画面が動作していたのですが
自動化しようと、fabfile.pyを作成し,gunicron -c ~~
を実行すると
Internet server error もしくは 502エラーになります。
fabfile.pyは
from fabric.api import cd, sudo, shell_env, run, env HOST_PATH = "/opt/django/microblog/microblog0" ex_env = { "DJANGO_SETTINGS_MODULE": "microblog.settings.prod", } env.hosts = ["ipアドレス", ] env.user = "root" env.password = "ssh接続時のパスワード" def collect_static(): with cd(HOST_PATH): with shell_env(**ex_env): run("/opt/django/microblog/bin/python manage.py collectstatic --no-input") def git_update(): with cd(HOST_PATH): run("git pull") def kill(): sudo("pkill -f gunicorn") def start(): with cd(HOST_PATH): with shell_env(**ex_env): sudo("/opt/django/microblog/bin/gunicorn -c gunicorn.conf.py microblog.wsgi") def restart(): kill() start() def all(): git_update() collect_static() restart()
で、実際
fab allをし 全てを動作させると、特にエラーはなく実行されます。
(microblog) [root@localhost microblog0]# fab all [ipアドレス] Executing task 'all' [ipアドレス] run: git pull [ipアドレス] out: Password for 'https://user@bitbucket.org': [ipアドレス] out: Already up-to-date. [ipアドレス] out: [ipアドレス] run: /opt/django/microblog/bin/python manage.py collectstatic --no-input [ipアドレス] out: /opt/django/microblog/microblog0 [ipアドレス] out: /opt/django/microblog/microblog0/templates [ipアドレス] out: [ipアドレス] out: 0 static files copied to '/opt/django/microblog/microblog0/static', 163 unmodified. [ipアドレス] out: [ipアドレス] sudo: pkill -f gunicorn [ipアドレス] sudo: /opt/django/microblog/bin/gunicorn -c gunicorn.conf.py microblog.wsgi Done. Disconnecting from ipアドレス... done.
でこれを実行
ps aux | grep gunicorn
を見る
rootのみの接続が一つあり、nginxのログがありません
ipアドレスのサイトを確認
502 Bad Gateway nginx/1.20.1
のエラーが起きており
次は手動で
systemctl restart nginx の後
gunicorn -c gunicorn.conf.py microblog.wsgi
を実行
ps aux | grep gunicorn
を確認すると
nginxのログとrootのログがあり、こちらはfabfileを作る前に動作していた状態で確認できます。
ipアドレスのサイトを確認
Internet server error
と表示されます。
ターミナル側でも特にエラー原因がわからず、ネットでも原因の種類が多いエラーらしいので、
まずエラーの原因を調べる方法を教えて頂きたいです。
同じような状態になったことのある方がいれば、解決方法を教えて頂きたいです。
あなたの回答
tips
プレビュー