feat(deploy): RTGS 3센터 컨테이너 배포 산출물
- Dockerfile.backend: 7서비스 공용 이미지(멀티스테이지 gradle 빌드, SERVICE env 선택, curl 포함) - docker-compose.yml: PG(3DB)+Kafka+순번기+DC1/DC2/DC3 각6서비스+프론트, 컨테이너 격리로 포트오프셋 불필요, depends_on 헬스 순서 - Dockerfile.frontend+nginx.conf: 콘솔+DT 정적빌드→nginx 서빙+API 리버스프록시(X-RTGS-DC 헤더/dcN 경로 센터 라우팅) - init/init-3centers.sql, .dockerignore, README(Coder 런북 + Coolify 어댑테이션/정책 경고) - vite.config: 배포 빌드에 dt.html 엔트리 추가(콘솔+DT 한번에) 빌드/기동 검증은 Coder(podman)에서 — 로컬 PC는 Docker 미지원. 프론트 build·compose 구조는 로컬 정적 검증 완료. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
17
deploy/Dockerfile.frontend
Normal file
17
deploy/Dockerfile.frontend
Normal file
@@ -0,0 +1,17 @@
|
||||
# RTGS 프론트 이미지 — 콘솔(index.html) + DT(dt.html) 정적 빌드 → nginx 서빙 + API 리버스프록시.
|
||||
# ---------- build ----------
|
||||
FROM node:22-bookworm-slim AS build
|
||||
WORKDIR /app
|
||||
COPY frontend/package*.json ./
|
||||
RUN npm ci
|
||||
COPY frontend/ ./
|
||||
RUN npm run build # vite build → dist (index.html + dt.html 두 엔트리)
|
||||
|
||||
# ---------- runtime ----------
|
||||
FROM nginx:1.27-alpine AS runtime
|
||||
RUN apk add --no-cache curl
|
||||
COPY --from=build /app/dist /usr/share/nginx/html
|
||||
COPY deploy/nginx.conf /etc/nginx/conf.d/default.conf
|
||||
EXPOSE 80
|
||||
HEALTHCHECK --interval=10s --timeout=4s --retries=10 \
|
||||
CMD curl -fs http://localhost/ >/dev/null || exit 1
|
||||
Reference in New Issue
Block a user