46 lines
1.3 KiB
Bash
46 lines
1.3 KiB
Bash
#!/bin/bash
|
|
|
|
# 워커 자동 시작 스크립트
|
|
echo "=== 이미지 처리 워커 시작 ==="
|
|
|
|
# 기본 설정
|
|
REDIS_URL=${REDIS_URL:-"redis://localhost:6379/0"}
|
|
MAIN_SERVER=${MAIN_SERVER:-"localhost"}
|
|
CONCURRENCY=${CONCURRENCY:-"2"}
|
|
WORKER_MODE=${WORKER_MODE:-"docker"}
|
|
|
|
echo "Redis URL: $REDIS_URL"
|
|
echo "메인 서버: $MAIN_SERVER"
|
|
echo "동시 처리 수: $CONCURRENCY"
|
|
echo "실행 모드: $WORKER_MODE"
|
|
|
|
case $WORKER_MODE in
|
|
"docker")
|
|
echo "Docker 모드로 워커 시작..."
|
|
docker-compose down
|
|
docker-compose build
|
|
docker-compose up -d
|
|
echo "워커 컨테이너 시작 완료!"
|
|
docker-compose logs -f worker
|
|
;;
|
|
|
|
"local")
|
|
echo "로컬 모드로 워커 시작..."
|
|
python worker.py --concurrency $CONCURRENCY --redis-url $REDIS_URL --main-server $MAIN_SERVER
|
|
;;
|
|
|
|
"remote")
|
|
echo "원격 모드로 워커 시작..."
|
|
# 원격 서버의 Redis에 연결
|
|
python worker.py --concurrency $CONCURRENCY --redis-url $REDIS_URL --main-server $MAIN_SERVER
|
|
;;
|
|
|
|
*)
|
|
echo "사용법: WORKER_MODE=docker|local|remote ./start_worker.sh"
|
|
echo "환경 변수:"
|
|
echo " REDIS_URL: Redis 서버 주소 (기본값: redis://localhost:6379/0)"
|
|
echo " MAIN_SERVER: 메인 서버 주소 (기본값: localhost)"
|
|
echo " CONCURRENCY: 동시 처리 수 (기본값: 2)"
|
|
exit 1
|
|
;;
|
|
esac |