Files
autoglue/Dockerfile
public-glueops-renovatebot[bot] bca32fe784 chore(fallback): update golang (#486)
Co-authored-by: public-glueops-renovatebot[bot] <186083205+public-glueops-renovatebot[bot]@users.noreply.github.com>
2025-12-26 15:28:18 +00:00

42 lines
1.0 KiB
Docker

#################################
# Builder: Go + Node in one
#################################
FROM golang:1.25.5-alpine@sha256:ac09a5f469f307e5da71e766b0bd59c9c49ea460a528cc3e6686513d64a6f1fb AS builder
RUN apk add --no-cache \
bash git ca-certificates tzdata \
build-base \
nodejs npm \
openjdk17-jre-headless \
jq yq brotli
RUN npm i -g yarn pnpm
WORKDIR /src
COPY . .
RUN make clean
RUN make swagger
RUN make sdk-ts-ui
RUN make ui
RUN make build
#################################
# Runtime
#################################
FROM alpine:3.23@sha256:51183f2cfa6320055da30872f211093f9ff1d3cf06f39a0bdb212314c5dc7375
RUN apk add --no-cache ca-certificates tzdata postgresql17-client \
&& addgroup -S app && adduser -S app -G app
WORKDIR /app
COPY --from=builder /src/autoglue /app/autoglue
ENV PORT=8080
EXPOSE 8080
USER app
HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \
CMD wget -qO- "http://127.0.0.1:${PORT}/api/v1/healthz" || exit 1
ENTRYPOINT ["/app/autoglue"]