# Auto Stock Trading System - 설치 가이드 ## 사전 요구사항 - Docker & Docker Compose - 한국투자증권 API 키 - Claude API 키 (Anthropic) ## 설치 단계 ### 1. 저장소 클론 ```bash git clone cd auto-stock ``` ### 2. 환경 변수 설정 ```bash cp .env.example .env ``` `.env` 파일을 열어 다음 값들을 설정하세요: - `KOREA_INVESTMENT_APP_KEY`: 한국투자증권 앱키 - `KOREA_INVESTMENT_APP_SECRET`: 한국투자증권 시크릿 - `KOREA_INVESTMENT_ACCOUNT_NUMBER`: 계좌번호 - `ANTHROPIC_API_KEY`: Claude API 키 ### 3. 시스템 시작 #### Docker로 전체 시스템 시작 ```bash ./scripts/deploy.sh ``` #### 개발 모드 (로컬 개발) ```bash # 인프라만 Docker로 시작 ./scripts/dev.sh # Backend 시작 cd backend pip install -r requirements.txt uvicorn app.main:app --reload # MCP Server 시작 (새 터미널) cd mcp-server pip install -r requirements.txt uvicorn main:app --reload --port 8001 # Frontend 시작 (새 터미널) cd frontend npm install npm run dev ``` ## 시스템 관리 ### 로그 확인 ```bash # 전체 로그 ./scripts/logs.sh # 특정 서비스 로그 ./scripts/logs.sh backend ./scripts/logs.sh mcp-server ./scripts/logs.sh frontend ``` ### 시스템 중지 ```bash ./scripts/stop.sh ``` ### 시스템 재시작 ```bash ./scripts/restart.sh ``` ### 데이터베이스 백업 ```bash ./scripts/backup.sh ``` ## 접속 URL - **Frontend**: http://localhost:3000 - **Backend API**: http://localhost:8000 - **API 문서**: http://localhost:8000/docs - **MCP Server**: http://localhost:8001 - **RabbitMQ 관리**: http://localhost:15672 (guest/guest) ## 트러블슈팅 ### 포트 충돌 다른 애플리케이션이 사용 중인 포트가 있다면 `.env` 파일에서 포트를 변경하세요. ### 데이터베이스 연결 오류 ```bash # 데이터베이스 재시작 docker-compose restart postgres ``` ### 전체 시스템 재빌드 ```bash docker-compose down -v docker-compose build --no-cache docker-compose up -d ``` ## 개발 가이드 ### Backend API 엔드포인트 추가 1. `backend/app/api/endpoints/` 에 새 엔드포인트 파일 생성 2. `backend/app/api/__init__.py` 에 라우터 등록 ### Frontend 페이지 추가 1. `frontend/src/pages/` 에 새 페이지 컴포넌트 생성 2. `frontend/src/App.tsx` 에 라우트 추가 ### MCP 도구 추가 1. `mcp-server/mcp_tools.py` 에 새 도구 메서드 추가 2. `get_tool_definitions()` 에 도구 정의 추가 ## 보안 주의사항 - 프로덕션 환경에서는 반드시 강력한 `SECRET_KEY` 사용 - API 키를 절대 Git에 커밋하지 마세요 - 프로덕션에서는 HTTPS 사용 - 데이터베이스 비밀번호 변경 - CORS 설정을 프로덕션 도메인으로 제한 ## 라이센스 MIT License