배경
현재 prod Docker 배포 시 2개의 env 파일이 각 패키지에 분산되어 있음:
packages/api-server/.env.prod
packages/ai-server/.prod.env
관리 포인트가 2곳이라 키 누락·불일치 위험이 있음.
변경 사항
루트에 단일 .env.prod 파일로 통합:
/.env.prod 생성 — 두 서버의 env를 하나로 합침
docker-compose.prod.yml 수정 — 두 서비스 모두 같은 env_file 참조, 충돌 키(LOG_FORMAT)는 environment에서 서비스별 오버라이드
deploy-backend.sh 수정 — env 파일 체크를 1개로 통합
- dev/staging도 동일하게 적용 검토
충돌 키 분석
겹치는 키 2개:
API_SERVER_GRPC_PORT — 양쪽 동일 값 → 충돌 없음
LOG_FORMAT — api: text, ai: json → compose environment에서 오버라이드
영향 범위
scripts/deploy-backend.sh
packages/api-server/docker/stack/docker-compose.prod.yml
- (선택)
docker-compose.yml, docker-compose.staging.yml
배경
현재 prod Docker 배포 시 2개의 env 파일이 각 패키지에 분산되어 있음:
packages/api-server/.env.prodpackages/ai-server/.prod.env관리 포인트가 2곳이라 키 누락·불일치 위험이 있음.
변경 사항
루트에 단일
.env.prod파일로 통합:/.env.prod생성 — 두 서버의 env를 하나로 합침docker-compose.prod.yml수정 — 두 서비스 모두 같은env_file참조, 충돌 키(LOG_FORMAT)는environment에서 서비스별 오버라이드deploy-backend.sh수정 — env 파일 체크를 1개로 통합충돌 키 분석
겹치는 키 2개:
API_SERVER_GRPC_PORT— 양쪽 동일 값 → 충돌 없음LOG_FORMAT— api:text, ai:json→ composeenvironment에서 오버라이드영향 범위
scripts/deploy-backend.shpackages/api-server/docker/stack/docker-compose.prod.ymldocker-compose.yml,docker-compose.staging.yml