代码拉取完成,页面将自动刷新
# 使用官方的 Go 镜像作为构建环境
FROM golang:1.23.1-alpine AS builder
# 设置工作目录
WORKDIR /builder
# 定义构建参数并提供默认值
ARG IMAGE_TAG=latest
# 添加版本标签
LABEL version=${IMAGE_TAG}
# 将 go.mod 和 go.sum 文件复制到工作目录
COPY go.mod go.sum ./
# 为我们的镜像设置必要的环境变量
ENV GO111MODULE=on \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=amd64 \
GOPROXY="https://goproxy.cn,direct"
# 下载依赖包
RUN go mod download
# 将源代码复制到工作目录
COPY . .
# 构建可执行文件
RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o lumenim -ldflags "-X main.Version=${IMAGE_TAG}" ./cmd/lumenim
# 使用一个更小的基础镜像来减小最终镜像的大小
FROM alpine:latest
RUN apk add --no-cache tzdata && \
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone
# 设置工作目录
WORKDIR /work/
# 从构建阶段复制可执行文件到最终镜像
COPY --from=builder /builder/lumenim .
# 运行可执行文件
ENTRYPOINT ["./lumenim"]
CMD ["--help"]
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。