Gunicorn RuntimeError 질문
ubuntu@ip-172-26-3-60:~$ myproject
(myproject) ubuntu@ip-172-26-3-60:~/projects/myproject$ sudo systemctl start myproject.service
(myproject) ubuntu@ip-172-26-3-60:~/projects/myproject$ sudo systemctl status myproject.service
● myproject.service - gunicorn deamon
Loaded: loaded (/etc/systemd/system/myproject.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Sat 2021-12-25 11:05:16 KST; 16s ago
Process: 97397 ExecStart=/home/ubuntu/venvs/myproject/bin/gunicorn --workers 2 --bind unix:/tmp/myproject.sock pybo:create_app() (code=exited, status=3)
Main PID: 97397 (code=exited, status=3)
Dec 25 11:05:15 ip-172-26-3-60 gunicorn[97409]: app.config.from_envvar('APP_CONFIG_FILE')
Dec 25 11:05:15 ip-172-26-3-60 gunicorn[97409]: File "/home/ubuntu/venvs/myproject/lib/python3.8/site-packages/flask/config.py", line 92, in from_envvar
Dec 25 11:05:15 ip-172-26-3-60 gunicorn[97409]: raise RuntimeError(
Dec 25 11:05:15 ip-172-26-3-60 gunicorn[97409]: RuntimeError: The environment variable 'APP_CONFIG_FILE' is not set and as such configuration could not be loaded. Set this variable and make it point to a configuration file
Dec 25 11:05:15 ip-172-26-3-60 gunicorn[97409]: [2021-12-25 11:05:15 +0900] [97409] [INFO] Worker exiting (pid: 97409)
Dec 25 11:05:16 ip-172-26-3-60 gunicorn[97397]: [2021-12-25 11:05:16 +0900] [97397] [WARNING] Worker with pid 97409 was terminated due to signal 15
Dec 25 11:05:16 ip-172-26-3-60 gunicorn[97397]: [2021-12-25 11:05:16 +0900] [97397] [INFO] Shutting down: Master
Dec 25 11:05:16 ip-172-26-3-60 gunicorn[97397]: [2021-12-25 11:05:16 +0900] [97397] [INFO] Reason: Worker failed to boot.
Dec 25 11:05:16 ip-172-26-3-60 systemd[1]: myproject.service: Main process exited, code=exited, status=3/NOTIMPLEMENTED
Dec 25 11:05:16 ip-172-26-3-60 systemd[1]: myproject.service: Failed with result 'exit-code'.
313페이지 3단계에서 sudo systemctl myproject.service
sudo systemctl myproject.service 명령어를 입력하면 APP_CONFIG_FILE 을 세팅하지 않았다고 에러가 납니다
alias myproject='export FLASK_APP=pybo;export FLASK_ENV=development;export APP_CONFIG_FILE=/home/ubuntu/projects/myproject/config/production.py;cd ~/projects/myproject;. ~/venvs/myproject/bin/activate'
/home/ubuntu/.profile 파일 마지막줄에 저렇게 적었는데 오류 원인이 궁금합니다
aiwhen34 님 310
2021년 12월 25일 11:23 오전
댓글 5개 더 보기...
@박응용님
GNU nano 4.8 production.py
from config.default import *
SQLALCHEMY_DATABASE_URI = 'sqlite:///{}'.format(os.path.join(BASE_DIR, 'pybo.db'))
SQLALCHEMY_TRACK_MODIFICATIONS = False
SECRET_KEY = b'&\xf3\x9d\x825._p\xa1\xa2\xb2f`\xc6\n\x82'
입니다
-
aiwhen34님,
2021년 12월 25일 6:06 오후
추천
,
대댓글
@aiwhen34님 파일도 이상없고 export 환경변수도 제대로 되었는데,, 왜 안되는지 잘 모르겠네요. ㅜㅜ
제대로 설정이 되었다면 가상환경에서 다음과 같은 결과가 나옵니다.
(myproject) ubuntu@ip-172-26-7-225:~/projects/myproject/config$ python
Python 3.6.9 (default, Dec 8 2021, 21:08:43)
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.environ.get('APP_CONFIG_FILE')
'/home/ubuntu/projects/myproject/config/production.py'
>>>
-
박응용님,
2021년 12월 25일 6:14 오후
추천
,
대댓글
@aiwhen34님 아, /home/ubuntu/venvs/myproject.env 파일을 설정하고 나서군요? 이 파일에 APP_CONFIG_FILE 설정도 확인해 보세요.
-
박응용님,
2021년 12월 25일 6:20 오후
추천
,
대댓글
@박응용님
GNU nano 4.8 myproject.env
FLASK_APP=pybo
FLASK_ENV=development
APP_CONFIG_FILE=/home/ubuntu/projects/myproject/config/production.py
=/ 부분이 하늘색으로 나와있는데 이거랑 관계가 있을까요?
-
aiwhen34님,
2021년 12월 25일 6:37 오후
추천
,
대댓글
@aiwhen34님 /etc/systemd/system/myproject.service 에서 정의한 myproject.env 파일의 경로도 맞는지 확인해 보세요.
-
박응용님,
2021년 12월 25일 11:16 오후
추천
,
대댓글