Files
seon 7186ef0c49 feat: add legacy-api service
실험·앱 계층 설계서 3.2의 legacy-api(VM 계층). /healthz(프로세스 생존),
/v1/price/{item}(db-primary app.price 조회, DB 불가 시 503), /metrics(Prometheus).
Go 1.27.1, pgx v5.11.0, client_golang v1.24.1. 이미지는 Cloud Build로 Artifact Registry에
올린다(MIG 인스턴스가 VM SA로 pull).
2026-09-23 23:35:10 +09:00

16 lines
492 B
Docker

# legacy-api (VM layer of the self-healing lab). Built with Cloud Build into Artifact Registry.
FROM golang:1.27.1-alpine AS build
WORKDIR /src
ENV CGO_ENABLED=0 GOFLAGS=-mod=mod
COPY go.mod ./
RUN go mod download
COPY . .
RUN go build -trimpath -ldflags="-s -w" -o /out/legacy-api .
FROM alpine:3.22
RUN apk add --no-cache ca-certificates && adduser -D -u 10001 app
USER 10001
COPY --from=build /out/legacy-api /usr/local/bin/legacy-api
EXPOSE 8080
ENTRYPOINT ["/usr/local/bin/legacy-api"]