hello world

Docker&Go 压缩镜像体积

Docker&Go 压缩镜像体积 涉及内容如下: upx: 二进制文件压缩,一般可以压缩50%左右 go build -ldflags 编译优化,可以参考Go gcflags/ldflags 的说明 Docker的空镜像scratch Docker编译优化: 层减少、多阶段构建 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 FROM golang:alpine as build WORKDIR /go/src/app COPY . . RUN apk --no-cache add ca-certificates upx && \ CGO_ENABLED=0 go build -ldflags '-s -w -extldflags "-static"' -o /go/bin/app ./main.go \ && upx -9 /go/bin/app FROM scratch COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ COPY --from=build /go/bin/app /app ENTRYPOINT ["/app"] 最终压缩体积如下

2023-06-17 10:53:15+08:00 · 1 分钟 · 75 字 · lazychanger