배포 스크립트 hardcoded 서비스 리스트가 blog-lab을 참조해 머지 후 첫 webhook 배포가 rsync(/repo/blog-lab 없음) + docker compose (서비스 미정의) 양쪽에서 실패. SERVICES/BUILD_TARGETS/HEALTH_ENDPOINTS/ DATA_DIRS를 insta-lab 기준으로 갱신. CONTAINER_NAMES는 blog-lab 고아 정리용으로 유지(다음번 docker rm -f가 안전 실행).
73 lines
2.1 KiB
Bash
73 lines
2.1 KiB
Bash
#!/bin/bash
|
|
set -euo pipefail
|
|
|
|
# NAS 내부 헬스체크용 (localhost 사용)
|
|
|
|
# Colors
|
|
GREEN='\033[0;32m'
|
|
RED='\033[0;31m'
|
|
NC='\033[0m'
|
|
|
|
echo "======================================"
|
|
echo " Starting Health Check..."
|
|
echo "======================================"
|
|
|
|
check_url() {
|
|
local name="$1"
|
|
local url="$2"
|
|
|
|
# HTTP 상태 코드만 가져옴 (타임아웃 5초)
|
|
status=$(curl -o /dev/null -s -w "%{http_code}" --max-time 5 "$url" || echo "FAIL")
|
|
|
|
if [[ "$status" == "200" ]]; then
|
|
echo -e "[${GREEN}OK${NC}] $name ($url) -> $status"
|
|
else
|
|
echo -e "[${RED}XX${NC}] $name ($url) -> $status"
|
|
fi
|
|
}
|
|
|
|
echo ""
|
|
echo "--- 1. Backend (Lotto) ---"
|
|
check_url "Backend Health" "http://localhost:18000/health"
|
|
check_url "Lotto Latest" "http://localhost:18000/api/lotto/latest"
|
|
check_url "Stats API" "http://localhost:18000/api/lotto/stats"
|
|
|
|
echo ""
|
|
echo "--- 2. Stock Lab ---"
|
|
check_url "Stock Health" "http://localhost:18500/health"
|
|
check_url "Stock News" "http://localhost:18500/api/stock/news"
|
|
check_url "Stock Indices" "http://localhost:18500/api/stock/indices"
|
|
|
|
echo ""
|
|
echo "--- 3. Music Lab ---"
|
|
check_url "Music Health" "http://localhost:18600/health"
|
|
check_url "Music Providers" "http://localhost:18600/api/music/providers"
|
|
|
|
echo ""
|
|
echo "--- 4. Insta Lab ---"
|
|
check_url "Insta Health" "http://localhost:18700/health"
|
|
check_url "Insta Status" "http://localhost:18700/api/insta/status"
|
|
|
|
echo ""
|
|
echo "--- 5. Realestate Lab ---"
|
|
check_url "Realestate Health" "http://localhost:18800/health"
|
|
|
|
echo ""
|
|
echo "--- 6. Agent Office ---"
|
|
check_url "Agent Office Health" "http://localhost:18900/health"
|
|
check_url "Agent Office Agents" "http://localhost:18900/api/agent-office/agents"
|
|
|
|
echo ""
|
|
echo "--- 7. Travel Proxy ---"
|
|
check_url "Travel Regions" "http://localhost:19000/api/travel/regions"
|
|
|
|
echo ""
|
|
echo "--- 8. Frontend (Nginx) ---"
|
|
check_url "Frontend Home" "http://localhost:8080"
|
|
check_url "Nginx->Backend Proxy" "http://localhost:8080/api/lotto/latest"
|
|
|
|
echo ""
|
|
echo "======================================"
|
|
echo " Health Check Completed."
|
|
echo "======================================"
|