1. 我是皮皮虾首页
  2. 编程开发
  3. Docker

go开发生产上使用的dockerfile 模板

避免重复写Dockerfile,可以借用下面的dockerfile模板

  • 新建Dockerfile
FROM golang:1.15-alpine3.12 AS builder

COPY . /build
WORKDIR /build

ENV GO111MODULE on

RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o SERVICE_NAME -mod=vendor cmd/main.go

# Production stage
FROM alpine:3.12 AS final

WORKDIR /app

COPY --from=builder /build/SERVICE_NAME /usr/bin
COPY --from=builder /build/config/app.ini /etc/SERVICE_NAME/

CMD SERVICE_NAME --app.config.path=/etc/SERVICE_NAME/app.ini

  • 在Dockerfile同级别目录执行,把hello-word替换成你的项目名称(跟当前父文件名称一致)
sed -i "s/SERVICE_NAME/hello-word/g" Dockerfile

原创文章,作者:站长,如若转载,请注明出处:https://wsppx.cn/1407/%e7%bd%91%e7%bb%9c%e5%bc%80%e5%8f%91/

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注