# 로빙 서버 인프라 구성도 ## 서버 구성 ### 51123 서버 (192.168.219.45) **역할**: 프록시, CI/CD, 관리, 로그 저장 ``` ┌─────────────────────────────────────────────────────────┐ │ 51123 서버 │ │ │ │ ┌─────────────┐ ┌──────────────┐ ┌───────────────┐ │ │ │ nginx │ │ Gitea │ │frontend-base │ │ │ │ (80/443) │ │ (3000) │ │ (8000) │ │ │ └─────┬───────┘ └──────┬───────┘ └───────────────┘ │ │ │ │ │ │ ┌─────────────┐ ┌──────────────┐ │ │ │ auth-server │ │ PostgreSQL │ │ │ │ (9000) │ │ (5432) │ │ │ └─────────────┘ └──────────────┘ │ │ │ │ │ │ │ ┌───────┴──────┐ ┌──────────────┐ │ │ │ │ Actions │ │ Log Storage │ │ │ │ │ Runner │ │/mnt/hdd/logs │ │ │ │ └──────────────┘ └──────────────┘ │ └────────┼────────────────────────────────────────────────┘ │ │ 프록시 ▼ ┌─────────────────────────────────────────────────────────┐ │ 51124 서버 │ │ (192.168.219.52) │ │ │ │ ┌────────────┐ ┌────────────┐ ┌────────────────┐ │ │ │ rb8001 │ │ rb10508 │ │ rb10408 │ │ │ │ (8001) │ │ (10508) │ │ (10408) │ │ │ └────────────┘ └────────────┘ └────────────────┘ │ │ │ │ ┌─────────────┐ ┌─────────────┐ ┌──────────────┐ │ │ │ skill-email │ │ skill-news │ │ ChromaDB │ │ │ │ (8501) │ │ (8505) │ │ (8000) │ │ │ └─────────────┘ └─────────────┘ └──────────────┘ │ │ │ │ │ └─────────────────────────────────────────────────────────┘ ``` ## 포트 매핑 ### 51123 서버 | 서비스 | 내부 포트 | 외부 접근 | 용도 | |--------|-----------|-----------|------| | nginx | 80/443 | ro-being.com | 리버스 프록시 | | Gitea | 3000 | git.ro-being.com | Git 저장소 | | frontend-base | 8000 | /admin/* | 관리자 대시보드 | | auth-server | 9000 | /auth/* | OAuth 인증 서비스 | | PostgreSQL | 5432 | - | 데이터베이스 (호스트) | ### 51124 서버 | 서비스 | 포트 | nginx 경로 | 용도 | |--------|------|------------|------| | rb8001 | 8001 | /rb8001/* | 메인 로빙 서비스 | | rb10508 | 10508 | /rb10508/* | 로빙 테스트 | | rb10408 | 10408 | /rb10408/* | 로빙 서비스 | | skill-email | 8501 | /skill-email/* | 이메일 스킬 | | skill-news | 8505 | /skill-news/* | 뉴스 스킬 | | ChromaDB | 8000 | - | 벡터 데이터베이스 | ## 배포 플로우 ``` 개발자 PC │ ├─── git push ──→ Gitea (51123) │ │ │ ├─── webhook ──→ Actions Runner │ │ │ │ │ ├─── Build │ │ ├─── Test │ │ └─── Deploy │ │ │ ▼ │ SSH (51124) │ │ └─── https://ro-being.com ←─── nginx ←────────── Services ``` ## 네트워크 구성 - **내부 네트워크**: 172.17.0.0/16 (Docker bridge) - **서버 간 통신**: SSH (포트 51124) - **외부 도메인**: ro-being.com (HTTPS) ## 보안 설정 1. **방화벽** - 외부: 80, 443만 개방 - 내부: 필요한 포트만 개방 2. **인증** - Gitea: 개인 토큰 - Admin API: JWT 토큰 - SSH: 키 기반 인증 3. **SSL/TLS** - Let's Encrypt 인증서 - 자동 갱신 설정 --- **최종 수정**: 2025-07-29 **수정 내용**: 서버 구조 변경 반영 (auth-server와 PostgreSQL이 51123 서버에 추가, PostgreSQL은 51124에서 제거)