DockerFile
⏱️

DockerFile

 
FROM golang:alpine AS builder # 为我们的镜像设置必要的环境变量 ENV GO111MODULE=on \ CGO_ENABLED=0 \ GOOS=linux \ GOARCH=amd64 \ GOPROXY=https://goproxy.cn # 移动到工作目录:/build WORKDIR /build # 将我们的代码编译成二进制可执行文件 app COPY . . RUN go mod tidy RUN go mod download # 将代码复制到容器中 RUN go build -o sleep main/main.go ################### # 接下来创建一个小镜像 ################### FROM centos:7 # 从builder镜像中把/dist/app 拷贝到当前目录 COPY --from=builder /build/sleep / EXPOSE 8080 8080 # 需要运行的命令 ENTRYPOINT ["./sleep"]

所有执行

notion image
  • ONBUILD:
在 Dockerfile 中,ONBUILD 指令用于定义一个触发器,当构建一个衍生镜像时,这个触发器会执行。换句话说,当你的 Dockerfile 作为基础镜像被其他镜像所使用时,ONBUILD 指令定义的命令将会被执行。这个功能通常用于创建通用的基础镜像,以便其他镜像可以在其基础上构建。