Golang应用的多场景Dockerfile
发布时间:2020-12-16 18:14:54 所属栏目:大数据 来源:网络整理
导读:Golang应用的多场景Dockerfile 一般通用的在Docker中编译Golang应用的方法需要2个Dockerfile——一个用于平台编译,另一个用于打包第一个镜像中编译的不包含工具的结果。这个叫编译模式。 自从Docker v17.05 版本后可以通过单个Dockerfile文件来使用多场景构
Golang应用的多场景Dockerfile一般通用的在Docker中编译Golang应用的方法需要2个Dockerfile——一个用于平台编译,另一个用于打包第一个镜像中编译的不包含工具的结果。这个叫编译模式。 自从Docker 应用开始一个”Hello World”应用: package main
import "fmt"
func main() {
fmt.Println("Hello world!")
}
单个Dockerfile在多场景构建中,单个Dockerfile允许多个
FROM golang:1.8.1
WORKDIR /go/src/test/
COPY main.go .
RUN GOOS=linux go build -o app .
FROM alpine:latest
RUN apk --no-cache add ca-certificates
WORKDIR /root/
COPY --from=0 /go/src/test/app .
CMD ["./app"]
构建与坚持大小docker build . docker ps
REPOSITORY TAG IMAGE ID CREATED SIZE
golang-multi-stage latest bcbbf69a9b59 6 minutes ago 6.7MB
结论一旦新特性发布成功,可以使用 原文链接:http://pliutau.com/multi-stage-dockerfile-for-golang-application/?utm_source=golangweekly&utm_medium=email (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |