10 Star 97 Fork 73

gzydong/go-chat

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Dockerfile 1.09 KB
一键复制 编辑 原始数据 按行查看 历史
gzydong 提交于 2025-01-03 23:11 +08:00 . feat:dockerfile
# 使用官方的 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"]
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/gzydong/go-chat.git
git@gitee.com:gzydong/go-chat.git
gzydong
go-chat
go-chat
02d21441f348a950c5fe0ebe26f6b5f68a8bfc88

搜索帮助