docs: apply review feedback to Phase 5 deploy spec
This commit is contained in:
parent
47c873a962
commit
9b2b3921c8
@ -16,7 +16,6 @@ galaxis-agent를 Oracle VM (A1, 4코어 ARM64, 24GB)에 배포하기 위한 자
|
|||||||
- 모니터링 대시보드 (Grafana)
|
- 모니터링 대시보드 (Grafana)
|
||||||
- 멀티 리포 지원
|
- 멀티 리포 지원
|
||||||
- autonomous 모드 전환
|
- autonomous 모드 전환
|
||||||
- `docker-compose.prod.yml` 수정 (CLAUDE.md 금지)
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@ -29,15 +28,17 @@ SSH로 Oracle VM에 접속한 후 실행하는 배포 스크립트.
|
|||||||
```
|
```
|
||||||
1. Docker 설치 확인 (docker --version)
|
1. Docker 설치 확인 (docker --version)
|
||||||
2. Docker Compose 설치 확인 (docker compose version)
|
2. Docker Compose 설치 확인 (docker compose version)
|
||||||
3. galaxis-net 네트워크 존재 확인 → 없으면 생성
|
3. docker-compose.yml 유효성 검증 (docker compose config --quiet)
|
||||||
4. .env 파일 존재 확인 → 없으면 에러 + .env.example 복사 안내
|
4. galaxis-net 네트워크 존재 확인 → 없으면 생성
|
||||||
5. 필수 환경변수 검증:
|
5. .env 파일 존재 확인 → 없으면 에러 + .env.example 복사 안내
|
||||||
|
6. 필수 환경변수 검증:
|
||||||
- ANTHROPIC_API_KEY
|
- ANTHROPIC_API_KEY
|
||||||
- GITEA_TOKEN
|
- GITEA_TOKEN
|
||||||
- GITEA_WEBHOOK_SECRET
|
- GITEA_WEBHOOK_SECRET
|
||||||
- DISCORD_TOKEN
|
- DISCORD_TOKEN
|
||||||
- DISCORD_CHANNEL_ID
|
- DISCORD_CHANNEL_ID
|
||||||
- FERNET_KEY
|
- FERNET_KEY
|
||||||
|
- AGENT_API_KEY
|
||||||
```
|
```
|
||||||
|
|
||||||
### 배포 단계
|
### 배포 단계
|
||||||
@ -45,18 +46,18 @@ SSH로 Oracle VM에 접속한 후 실행하는 배포 스크립트.
|
|||||||
```
|
```
|
||||||
1. galaxis-agent 이미지 빌드 (docker compose build)
|
1. galaxis-agent 이미지 빌드 (docker compose build)
|
||||||
2. 서비스 시작 (docker compose up -d)
|
2. 서비스 시작 (docker compose up -d)
|
||||||
3. 30초 대기
|
3. Health check 검증 (5초 간격, 최대 60초 retry):
|
||||||
4. Health check 검증:
|
|
||||||
- GET /health → status == "ok"
|
- GET /health → status == "ok"
|
||||||
- GET /health/gitea → 연결 확인
|
- GET /health/gitea → 연결 확인
|
||||||
- GET /health/discord → 연결 확인
|
- GET /health/discord → 연결 확인
|
||||||
|
- GET /health/queue → 큐 상태 확인
|
||||||
- GET /health/costs → 응답 확인
|
- GET /health/costs → 응답 확인
|
||||||
5. 결과 출력 (성공/실패 + 로그 안내)
|
4. 결과 출력 (성공/실패 + 로그 안내)
|
||||||
```
|
```
|
||||||
|
|
||||||
### --dry-run 옵션
|
### --dry-run 옵션
|
||||||
|
|
||||||
실제 Docker 명령을 실행하지 않고, 어떤 명령이 실행될지만 출력한다. 로컬에서 스크립트 검증용.
|
pre-flight 체크는 실제로 실행하되, Docker 명령(build, up, health check)은 echo만 출력한다. 로컬에서 `.env` 유효성 등을 검증할 수 있다.
|
||||||
|
|
||||||
### 에러 처리
|
### 에러 처리
|
||||||
|
|
||||||
@ -64,6 +65,14 @@ SSH로 Oracle VM에 접속한 후 실행하는 배포 스크립트.
|
|||||||
- 빌드 실패 시: 에러 로그 출력 후 종료
|
- 빌드 실패 시: 에러 로그 출력 후 종료
|
||||||
- health check 실패 시: `docker compose logs` 안내 후 종료 (자동 롤백 없음)
|
- health check 실패 시: `docker compose logs` 안내 후 종료 (자동 롤백 없음)
|
||||||
|
|
||||||
|
### 수동 롤백
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker compose down
|
||||||
|
git checkout <이전_커밋>
|
||||||
|
./deploy.sh
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 2. build-sandbox.sh
|
## 2. build-sandbox.sh
|
||||||
@ -73,9 +82,12 @@ SSH로 Oracle VM에 접속한 후 실행하는 배포 스크립트.
|
|||||||
```
|
```
|
||||||
1. Dockerfile.sandbox 존재 확인
|
1. Dockerfile.sandbox 존재 확인
|
||||||
2. docker build -f Dockerfile.sandbox -t galaxis-sandbox:latest .
|
2. docker build -f Dockerfile.sandbox -t galaxis-sandbox:latest .
|
||||||
|
(VM에서 직접 실행하므로 네이티브 ARM64 빌드, --platform 불필요)
|
||||||
3. 빌드 성공 확인 + 이미지 크기 출력
|
3. 빌드 성공 확인 + 이미지 크기 출력
|
||||||
```
|
```
|
||||||
|
|
||||||
|
`--dry-run` 옵션: 명령 출력만 (실행 안 함).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 3. .env.example 업데이트
|
## 3. .env.example 업데이트
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user