DOCS/book/300_architecture/reference/environment_variables.md
Claude-51124 0a4edd4542 docs: reference 문서 누락 항목 보완
- API 엔드포인트: test, dm 엔드포인트 추가
- API 엔드포인트: skill-embedding, skill-publish 추가
- 인프라: skill-embedding 포트 8515, skill-publish 포트 8511 수정
- 환경변수: rb8001 추가 변수, skill-embedding, skill-publish 추가
2025-12-06 13:35:34 +09:00

111 lines
3.1 KiB
Markdown

# 환경변수 참조
**작성일**: 2025-12-06
**목적**: 환경변수 중복/오류 방지, 빠른 참조
---
## 공통 환경변수
| 변수명 | 필수 | 설명 | 예시 |
|--------|------|------|------|
| `SERVICE_NAME` | 예 | 서비스 이름 | `skill-slack` |
| `PORT` | 예 | 서비스 포트 | `8502` |
| `LOG_LEVEL` | 선택 | 로그 레벨 | `INFO` |
| `DATABASE_URL` | 예* | PostgreSQL 연결 문자열 | `postgresql://...` |
| `JWT_SECRET_KEY` | 예* | JWT 시크릿 키 | - |
*일부 서비스만 필수
---
## rb8001
| 변수명 | 필수 | 설명 | 참고 |
|--------|------|------|------|
| `DATABASE_URL` | 예 | PostgreSQL 연결 | `rb8001/docker-compose.yml` |
| `JWT_SECRET_KEY` | 예 | JWT 인증 | `rb8001/app/auth.py` |
| `NEO4J_PASSWORD` | 선택 | Neo4j 비밀번호 | `rb8001/docker-compose.yml` |
| `TAVILY_API_KEY` | 선택 | Tavily API 키 | `rb8001/docker-compose.yml` |
| `USE_EMOTION_ANALYSIS` | 선택 | 감정 분석 활성화 | `true/false` |
| `GEMINI_API_KEY` | 선택 | Gemini API 키 | - |
| `SLACK_BOT_TOKEN` | 선택 | Slack 봇 토큰 | - |
| `OPENAI_API_KEY` | 선택 | OpenAI API 키 | - |
| `ANTHROPIC_API_KEY` | 선택 | Anthropic API 키 | - |
---
## skill-* 서비스
### skill-slack
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `SERVICE_API_KEY` | 예 | 서비스 인증 키 |
| `SLACK_BOT_TOKEN` | 예 | Slack 봇 토큰 |
| `JWT_SECRET_KEY` | 예 | JWT 검증 |
**참고**: `skill-slack/app/core/config.py`, `skill-slack/docker-compose.yml`
### skill-rag-file
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `DATABASE_URL` | 예 | PostgreSQL 연결 |
| `CHROMA_PORT` | 선택 | ChromaDB 포트 (기본: 8000) |
**참고**: `skill-rag-file/docker-compose.yml:11`
### skill-calendar
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `DATABASE_URL` | 예 | PostgreSQL 연결 (51123) |
**참고**: `skill-calendar/docker-compose.yml:14`
### skill-news
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `GEMINI_API_KEY` | 예 | Gemini API 키 |
| `DATABASE_URL` | 예 | PostgreSQL 연결 |
**참고**: `skill_news/README.md:36-39`
### skill-embedding
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `PORT` | 예 | 서비스 포트 (8515) |
| `SERVICE_NAME` | 예 | 서비스 이름 |
**참고**: `skill-embedding/docker-compose.yml:14-15`
### skill-publish
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `PORT` | 예 | 서비스 포트 (8511) |
**참고**: `skill-publish/docker-compose.yml:9`
---
## robeing-monitor
| 변수명 | 필수 | 설명 |
|--------|------|------|
| `DATABASE_URL` | 예 | PostgreSQL 연결 |
| `ROBEING_URLS` | 예 | 로빙 서비스 URL 목록 |
| `SKILL_URLS` | 예 | 스킬 서비스 URL 목록 |
**참고**: `robeing-monitor/README.md:37-42`
---
## 주의사항
- **민감 정보 하드코딩 금지**: API 키, 토큰, 비밀번호는 `.env` 파일에만 저장
- **기본값 사용 금지**: 환경변수 미설정 시 명시적 에러 처리
- **참고**: `DOCS/book/300_architecture/311_FastAPI_구조_원칙.md` 섹션 12
---
**업데이트**: 환경변수 추가/변경 시 즉시 반영