From 92c1a3c230f4b473d786aba66dd4fae0f35a86d6 Mon Sep 17 00:00:00 2001 From: wolter Date: Fri, 2 Aug 2024 14:02:13 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0dockerfile?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..264e9ac --- /dev/null +++ b/Dockerfile @@ -0,0 +1,43 @@ + +## 使用官方Go镜像作为构建环境 +#FROM golang:1.21.0 AS builder +# +## 设置工作目录 +#WORKDIR /app +# +## 复制项目源码 +#COPY . . +# +## 复制go模块依赖文件 +#COPY go.mod go.sum ./ +# +## 安装go模块依赖 +#RUN go env -w GOPROXY=https://goproxy.cn,direct +#RUN go mod tidy +# +## 编译Go应用程序,生成静态链接的二进制文件 +#RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o server . + +# 创建最终镜像,用于运行编译后的Go程序 +FROM alpine + +RUN echo 'http://mirrors.ustc.edu.cn/alpine/v3.5/main' > /etc/apk/repositories \ +&& echo 'http://mirrors.ustc.edu.cn/alpine/v3.5/community' >>/etc/apk/repositories \ +&& apk update && apk add tzdata \ +&& ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ +&& echo "Asia/Shanghai" > /etc/timezone \ + +ENV server = "admin" + +# 设置工作目录 +WORKDIR /app + +# 将编译好的二进制文件从构建阶段复制到运行阶段 +COPY /server . +#COPY --from=builder /app/server . +COPY .env . + + +ENV TZ=Asia/Shanghai +# 设置容器启动时运行的命令 +ENTRYPOINT ["/app/server", "-a", "$server"] \ No newline at end of file