- 네이밍 컨벤션, 로깅 규칙, 상수 구조, 배포 패턴만 유지 - 자주 변하는 정보(포트, 엔드포인트, 환경변수 값)는 각 서비스 README 참조로 변경 - 항상성(book/)에 맞게 원칙/패턴 중심으로 정리
1.6 KiB
1.6 KiB
배포 패턴 원칙
작성일: 2025-12-06 목적: 배포 프로세스 일관성 유지
배포 패턴 구조
자동 배포 패턴
로컬 개발 → Gitea 푸시 → Actions (51123) → SSH (51124) → git pull → docker 재시작
참고: AGENTS.md:83-85
수동 배포 패턴
서버 접속 → git pull → docker compose down && docker compose up -d --build
참고: AGENTS.md:32
워크플로우 파일 구조
위치
- 경로:
.gitea/workflows/*.yml - 예시:
rb8001/.gitea/workflows/cicd.yml
공통 패턴
- SSH 키 설정
- 서버 접속
- git pull
- docker 재시작
- 헬스체크
참고: 각 서비스 .gitea/workflows/ 디렉토리
배포 검증 원칙
필수 확인
docker ps로 컨테이너 실행 확인- 헬스체크 엔드포인트 응답 확인
- 로그 확인
주의: Actions 성공 메시지만 믿지 말고 실제 컨테이너 상태 확인
참고: AGENTS.md:30-31
SSH Secrets 구조
| Secret 이름 | 설명 | 사용 위치 |
|---|---|---|
SSH_PRIVATE_KEY_51124 |
51124 서버 SSH 키 | Gitea Actions |
SSH_HOST_51124 |
51124 서버 IP | Gitea Actions |
SSH_USER_51124 |
SSH 사용자 | Gitea Actions |
참고: DOCS/journey/plans/251206_skill_calendar_자동배포_구성.md
배포 패턴 모범 사례
DO
set -e로 에러 즉시 중단.env파일 존재 확인- 헬스체크 재시도 로직
DON'T
- Actions 성공 메시지만 믿기
- 빌드 실패 시 로그 확인 생략
업데이트: 패턴 변경 시 즉시 반영