64cd32495f
## 신규 문서 ### 배포 하네스 (DEPLOYMENT_HARNESS.md) - 사전 검증 프로세스 (빌드 아티팩트, 환경 변수, 포트) - 배포 중 헬스 체크 (6단계: 프로세스, /healthz, API, 로그, Nginx, 프록시) - 포트 전환 검증 (Nginx, 프록시, 포트 파일) - 자동 롤백 규칙 (FATAL/ERROR 감지, 즉시 중단) - 배포 실패 기준 + 진단 절차 ### Nginx 하네스 (NGINX_HARNESS.md) - 상대경로 설정 원칙 (proxy_pass http://127.0.0.1:5001/) - 포트 매핑 규칙 (443→프록시→{5003|5004}) - proxy_pass 규칙 (슬래시 필수, rewrite 방지) - 필수 헤더 설정 (Upgrade, Host, X-Forwarded-*, 타임아웃) - SSL/TLS 설정 (Let's Encrypt 경로, 보안 헤더) - Green-Blue 배포 연동 (포트 파일 읽기 원칙) - 문제 해결 가이드 (404, 502, SSL 오류) ### 축약 참조본 (docs/CLAUDE_CORE.md) - CLAUDE.md 핵심만 추출 - 모든 하네스 참조 - 필요시 빠른 참조용 ## 개선 사항 ### 배포 정책 강화 - 배포 전 사전 검증: 아티팩트, 환경, 포트 확인 - 배포 중 엄격한 검증: API 엔드포인트 + 로그 오류 - 포트 전환 전 최종 검증: Nginx, 프록시, 프로세스 - 배포 실패 시 자동 롤백: FATAL/ERROR 감지 → 즉시 중단 ### 스크립트 개선 - deploy_gb.sh: 6단계 헬스 체크 + API 검증 추가 - scripts/validate-deploy.sh: 새로운 사전 검증 스크립트 ### 문서 명확화 - 각 하네스: 단일 책임 원칙 - Nginx: 상대경로 설정 원칙 정확히 명문화 - 배포: 검증 기준 + 롤백 규칙 명확화 ## 검증 완료 - ✅ 배포 스크립트 문법 정상 (6/6 기능 확인) - ✅ E2E 테스트 1/1 통과 (프로덕션 검증) - ✅ 문서 링크 모두 유효 (모든 하네스 참조 확인) - ✅ 배포 체계 안정화 (사전 검증 + 자동 롤백) ## 주의사항 CLAUDE.md는 원본 유지 - 장기 참조 문서로 보존 - 필요시 docs/CLAUDE_CORE.md (축약본) 참조 - 배포 정책은 DEPLOYMENT_HARNESS.md 참고 - Nginx 설정은 NGINX_HARNESS.md 참고 Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
40 lines
1.2 KiB
Plaintext
40 lines
1.2 KiB
Plaintext
# TaxBaik Nginx 설정
|
|
# https://www.taxbaik.com/ → http://127.0.0.1:5001/
|
|
|
|
server {
|
|
server_name taxbaik.com www.taxbaik.com;
|
|
client_max_body_size 512M;
|
|
|
|
location / {
|
|
proxy_pass http://127.0.0.1:5001/;
|
|
proxy_http_version 1.1;
|
|
proxy_set_header Upgrade $http_upgrade;
|
|
proxy_set_header Connection "Upgrade";
|
|
proxy_set_header Host $host;
|
|
proxy_cache_bypass $http_upgrade;
|
|
proxy_set_header X-Real-IP $remote_addr;
|
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
proxy_set_header X-Forwarded-Proto $scheme;
|
|
proxy_read_timeout 120s;
|
|
}
|
|
|
|
listen 443 ssl;
|
|
ssl_certificate /etc/letsencrypt/live/taxbaik.com/fullchain.pem;
|
|
ssl_certificate_key /etc/letsencrypt/live/taxbaik.com/privkey.pem;
|
|
include /etc/letsencrypt/options-ssl-nginx.conf;
|
|
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
|
|
}
|
|
|
|
server {
|
|
if ($server_name = www.taxbaik.com) {
|
|
return 301 https://$server_name$request_uri;
|
|
}
|
|
if ($server_name = taxbaik.com) {
|
|
return 301 https://$server_name$request_uri;
|
|
}
|
|
|
|
listen 80;
|
|
server_name taxbaik.com www.taxbaik.com;
|
|
return 404;
|
|
}
|