gunicorn을 이용한 배포 방법
2024-04-23 21:19:42
gunicorn을 이용한 배포, flask를 사용한 코드는 django로 포팅해야만 배포가능하다 라고 알고있었습니다만 gunicorn 이라는 것이 있군요. 소스코드는 그대로 두시고 실행 명령어만 gunicorn을 사용하면 됩니다. 심지어 worker라는 것이 있어 여러 개 프로세스가 동시에 실행되고, 문제 생기면 worker단위로 재시작하는 군요.
gunicorn을 이용한 배포, 설치
pip install gunicorn
gunicorn을 이용한 배포, 실행
아래와 같은 소스코드를 실행한다고 가정하자. 소스코드 파일명이 your_flask_source.py 이다. 4번째 라인
app = Flask(__name__)
를 주목해둬야한다.
# your_flask_source.py
from flask import Flask
# Flask 애플리케이션 인스턴스 생성
app = Flask(__name__)
# 루트 URL에 대한 라우트 설정
@app.route('/')
def home():
return "Welcome to the Flask app!"
# 이 파일이 메인 프로그램으로 실행될 때, 웹 서버를 시작
if __name__ == "__main__":
app.run(debug=True)
gunicorn -w 4 -b 0.0.0.0:8000 your_flask_source:app
-
-w 4
: 워커(worker) 프로세스의 수를 4로 설정합니다. 워커의 수는 서버의 CPU 코어 수나 예상 트래픽량에 따라 조정하시면 됩니다. -
-b 0.0.0.0:8000
: Gunicorn 서버가 모든 인터페이스에서 8000 포트를 통해 수신하도록 설정. 파이썬 코드에 정의된 포트번호는 무시됩니다. -
your_flask_source:app
: 첫 번째your_flask_source
은 Python 파일의 이름(your_flask_source.py
에서.py
를 제외한 부분)을 나타내고, 두 번째app
은 Flask 앱 인스턴스의 변수 이름이다. 소스코드의 4번째 라인 참고
Chat GPT로 챗봇 만들기
Vertex AI로 챗봇 만들기
Google AI studio(Gemini) 로 챗봇 구현
Claude로 챗봇 만들기
챗팅창 화면 꾸미기
gunicorn을 이용한 배포 방법