[FEAT] (프로젝트 구성): 초기 프로젝트 구성
v0.1 (2025-11-13) - Flask, Gunicorn, gevent, MariaDB, Redis, Swagger, logging 기본 구성 완료;
This commit is contained in:
67
src/run_server.sh
Normal file
67
src/run_server.sh
Normal file
@@ -0,0 +1,67 @@
|
||||
#!/bin/bash
|
||||
##############################################################
|
||||
# NuriQ 서버 실행 스크립트
|
||||
#
|
||||
# 사용법:
|
||||
# ./run_server.sh [모드]
|
||||
#
|
||||
# 모드:
|
||||
# dev - 개발 모드 (Flask built-in server)
|
||||
# prod - 운영 모드 (Gunicorn + gevent)
|
||||
##############################################################
|
||||
|
||||
set -e #에러 발생시 스크립트 중단
|
||||
|
||||
# 색상 정리
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[1;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
# 현재 스크립트 디렉토리로 이동
|
||||
cd "$(dirname "$0")"
|
||||
|
||||
# 모드 설정 (기본값: prod)
|
||||
MODE="${1:-prod}"
|
||||
|
||||
echo -e "${BLUE}========================================="
|
||||
echo -e "${BLUE} NuriQ Server Start${NC} "
|
||||
echo -e "${BLUE}========================================="
|
||||
|
||||
# 가상환경 활성화 확인
|
||||
if [ -z "$VIRTUAL_ENV" ]; then
|
||||
echo -e "${YELLOW} Virtual environment not activated${NC}"
|
||||
echo -e "${YELLOW} Consider running: source .venv/bin/activate${NC}"
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# 모드에 따른 처리
|
||||
case "$MODE" in
|
||||
dev)
|
||||
echo -e "${GREEN} 개발 모드 시작 중 ...${NC}"
|
||||
echo -e "${GREEN} Flask built-in server 사용 중 ...${NC}"
|
||||
echo ""
|
||||
export DEBUG=True
|
||||
gunicorn -c ./gunicorn_config.py app:app
|
||||
;;
|
||||
|
||||
prod)
|
||||
echo -e "${GREEN} 운영 모드 시작 중 ...${NC}"
|
||||
echo -e "${YELLOW} Gunicorn + gevent 사용 중 ...${NC}"
|
||||
echo ""
|
||||
gunicorn -c ./gunicorn_config.py \
|
||||
--worker-class geventwebsocket.gunicorn.workers.GeventWebSocketWorker \
|
||||
app:app
|
||||
;;
|
||||
*)
|
||||
echo -e "{$RED} 알 수 없는 모드: $MODE${NC}"
|
||||
echo ""
|
||||
echo "사용 가능한 모드"
|
||||
echo " dev - 개발 모드 (Flask built-in server)"
|
||||
echo " prod - 운영 모드 (Gunicorn + gevent)"
|
||||
echo ""
|
||||
echo "사용: $0 [mode]"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user