수정본

This commit is contained in:
2026-02-22 17:23:20 +09:00
parent b147498c31
commit 32e2263f0a
109 changed files with 13979 additions and 4580 deletions

149
docs/INSTALLATION.md Normal file
View File

@@ -0,0 +1,149 @@
# Auto Stock Trading System - 설치 가이드
## 사전 요구사항
- Docker & Docker Compose
- 한국투자증권 API 키
- Claude API 키 (Anthropic)
## 설치 단계
### 1. 저장소 클론
```bash
git clone <repository-url>
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