代码拉取完成,页面将自动刷新
## 第一阶段,编译
# 基础镜像
FROM golang:1.21.4-alpine as builder
# 设置时区
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo "Asia/Shanghai" /etc/timezone \
&& date -R
# 使用国内源,如果安装依赖
# RUN echo "https://mirror.tuna.tsinghua.edu.cn/alpine/v3.8/main" > /etc/apk/repositories
# RUN echo -e http://mirrors.aliyun.com/alpine/v3.10/main/ > /etc/apk/repositories \
# && apk add --no-cache xxxx
COPY ./src /app
WORKDIR /app
VOLUME ["/app"]
# export GOPROXY=https://mirrors.aliyun.com/goproxy/ \
# 打包二进制&&增加执行权限
RUN go mod tidy \
&& export GOARCH=amd64 \
&& export GOOS=linux \
&& go build -o ./dist/demo \
&& chmod +x ./dist/demo
# 若仅构建,第一次只需运行
# docker build -t godemo .
# 第二次构建只需再次运行容器,由于容器没有主进程,运行编译完成便结束自动退出
# docker run --name=godemo -v ./dist:/app/dist -d godemo:latest
## 第二阶段,构建最终镜像
FROM alpine:latest
WORKDIR /app
COPY --from=builder /app/dist /app
# # 容器入口, 执行命令
CMD ["./demo"]
# docker run --name=godemo -d godemo:latest
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。