#!/usr/bin/env bash # ============================================================ # Phase 1~4 전체 설치 스크립트 # ============================================================ set -euo pipefail GREEN='\033[0;32m'; NC='\033[0m' log() { echo -e "${GREEN}[✓]${NC} $1"; } cd ~/trading # ── 1. 디렉토리 생성 ─────────────────────────────────── log "디렉토리 생성..." mkdir -p news-collector kis-api score-engine dashboard-api # ── 2. .env 추가 ──────────────────────────────────────── log ".env 업데이트..." grep -q "KIS_APP_KEY" .env 2>/dev/null || cat >> .env << 'EOF' # Phase 2: 한국투자증권 (없으면 빈값) KIS_APP_KEY= KIS_APP_SECRET= KIS_ACCOUNT_NO= KIS_IS_PAPER=true EOF # ── 3. 빌드 및 시작 ───────────────────────────────────── log "Phase 1: 뉴스 수집기 빌드..." docker compose up -d --build news-collector log "Phase 2: KIS API 빌드..." docker compose up -d --build kis-api log "Phase 3: 점수 엔진 빌드..." docker compose up -d --build score-engine log "Phase 4: 대시보드 API 빌드..." docker compose up -d --build dashboard-api # ── 4. 헬스체크 ────────────────────────────────────────── log "서비스 시작 대기 (30초)..." sleep 30 echo "" echo "============================================================" echo -e "${GREEN} Phase 1~4 설치 완료!${NC}" echo "============================================================" echo "" echo " 서비스 목록:" echo " ─────────────────────────────────────────" echo " 뉴스 수집기 : http://192.168.0.60:8787" echo " KIS 주가 API : http://192.168.0.60:8585" echo " 점수 엔진 : http://192.168.0.60:8686" echo " 대시보드 API : http://192.168.0.60:8989" echo " DART 수집기 : http://192.168.0.60:8888" echo " n8n : http://192.168.0.60:5678" echo " 바른API : http://192.168.0.60:5757" echo " vLLM : http://192.168.0.60:8000" echo "" echo " 사용법:" echo " ─────────────────────────────────────────" echo " # 뉴스 수동 수집" echo " curl -s -X POST http://localhost:8787/collect/market" echo " curl -s -X POST http://localhost:8787/collect/stocks" echo "" echo " # 점수 수동 산출" echo " curl -s -X POST http://localhost:8686/score/calculate" echo "" echo " # 추천 종목 조회" echo " curl -s http://localhost:8686/recommendations | python3 -m json.tool" echo "" echo " # 종목 랭킹" echo " curl -s http://localhost:8686/ranking | python3 -m json.tool" echo "" echo " # 종목 상세 (삼성전자)" echo " curl -s http://localhost:8686/stock/005930 | python3 -m json.tool" echo "" echo " # 대시보드 API" echo " curl -s http://localhost:8989/api/summary | python3 -m json.tool" echo " curl -s http://localhost:8989/api/ranking | python3 -m json.tool" echo " curl -s http://localhost:8989/api/recommendations | python3 -m json.tool" echo "============================================================" docker ps -a --format "table {{.Names}}\t{{.Status}}"