fix(docker): 运行镜像 gcr.io/distroless → alpine(内网 runner 连不上 gcr.io)
deploy-132 / deploy (push) Has been cancelled

128 的 runner 能拉 docker.io 但连不上 gcr.io(dial 443 i/o timeout),distroless 拉不到。
三个 Go 服务运行 stage 换 alpine:3.20 + ca-certificates(TLS 连 LLM/MinIO)+ tzdata +
非 root 用户。二进制 CGO_ENABLED=0 全静态,alpine 上直接跑;本地已验证构建+启动正常。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Blizzard
2026-07-18 15:54:35 +08:00
parent 84a32023ee
commit 2d14245086
3 changed files with 14 additions and 4 deletions
+4 -1
View File
@@ -13,6 +13,9 @@ COPY sundynix-mcp-go/ ./sundynix-mcp-go/
WORKDIR /src/sundynix-mcp-go
RUN CGO_ENABLED=0 go build -trimpath -ldflags="-s -w" -o /out/mcp-go ./cmd/server
FROM gcr.io/distroless/static-debian12:nonroot
# alpine 运行(内网 runner 连不上 gcr.io;二进制 CGO_ENABLED=0 全静态,ca-certs 供 TLS)。
FROM alpine:3.20
RUN apk add --no-cache ca-certificates tzdata && adduser -D -u 10001 app
USER app
COPY --from=build /out/mcp-go /mcp-go
ENTRYPOINT ["/mcp-go"]