# BillCare 서버 배포 가이드 (exdev.co.kr + Jenkins) ## 개요 | 트랙 | 트리거 | 동작 | |------|--------|------| | Track A | `git push origin main` | `post-receive` → `deploy-billcare.sh` | | Track B | Jenkins `BillCare-Pipeline` | `deploy-billcare.sh` | ## 경로 | 항목 | 경로 | |------|------| | bare repo | `/Volumes/ADATA/git/BillCare.git` | | work-tree | `/Users/aidev/apps/BillCare` | | 배포 스크립트 | `/Volumes/ADATA/git/deploy-billcare.sh` | | 로그 | `/Volumes/ADATA/logs/deploy/billcare-deploy.log` | | HTTPS | https://billcare.exdev.co.kr | ## 호스트 포트 | 서비스 | 포트 | |--------|------| | frontend (Caddy upstream) | **83** | | backend (직접 헬스체크) | **18082** | | mysql | **3308** | ## 로컬 push ```bash cd /Users/macbook/dev/billCare git push origin main ``` ## HTTPS / TLS | 항목 | 값 | |------|-----| | URL | https://billcare.exdev.co.kr | | Caddy | `ex-chatbot-caddy` → host `:83` | | 인증서 | LE 전용 (`billcare.exdev.co.kr`) | | cert 경로 | `.../nginx/certs/billcare/{fullchain,privkey}.pem` | | 발급 | `acme.sh` + HTTP-01 (`gc-frontend` `/var/www/certbot`) | | 갱신 reload | `docker exec ex-chatbot-caddy caddy reload --config /etc/caddy/Caddyfile` | 공유 인증서(`stock`/`chatbot`) SAN에 billcare가 없어 별도 발급했습니다. `gc-frontend`에 acme-webroot가 마운트되어 있어야 갱신이 됩니다.