mirror of
https://github.com/hanzoai/agent.git
synced 2026-09-11 21:08:51 +00:00
deployments/docker/Dockerfile.demo-go-agent: switch runtime from gcr.io/distroless/static-debian12:nonroot to FROM scratch. CA certs, tzdata, /etc/passwd and /etc/group (nonroot uid/gid 65532) come from the builder. deployments/docker/Dockerfile.control-plane: switch runtime from gcr.io/distroless/base-debian12 (glibc + sqlite_fts5 CGO needs libc) to ghcr.io/hanzoai/debian12:base. TODO flagged for ghcr-auth in CI.
23 lines
929 B
Docker
23 lines
929 B
Docker
FROM --platform=$BUILDPLATFORM golang:1.26-alpine AS builder
|
|
RUN apk add --no-cache ca-certificates tzdata
|
|
RUN addgroup -g 65532 -S nonroot && adduser -u 65532 -S nonroot -G nonroot
|
|
WORKDIR /workspace
|
|
|
|
COPY sdk/go ./sdk/go
|
|
COPY examples/go_agent_nodes ./examples/go_agent_nodes
|
|
|
|
RUN --mount=type=cache,target=/root/.cache/go-build --mount=type=cache,target=/go/pkg/mod \
|
|
cd examples/go_agent_nodes && go mod download && \
|
|
CGO_ENABLED=0 go build -o /out/hanzo-agents-demo-go-agent ./main.go
|
|
|
|
FROM scratch
|
|
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
|
|
COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo
|
|
COPY --from=builder /etc/passwd /etc/passwd
|
|
COPY --from=builder /etc/group /etc/group
|
|
COPY --from=builder /out/hanzo-agents-demo-go-agent /usr/local/bin/hanzo-agents-demo-go-agent
|
|
EXPOSE 8001
|
|
USER 65532:65532
|
|
ENTRYPOINT ["/usr/local/bin/hanzo-agents-demo-go-agent"]
|
|
|