QSLY commited on
Commit
12ca566
·
verified ·
1 Parent(s): eca44b1

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +28 -9
Dockerfile CHANGED
@@ -1,15 +1,34 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  FROM alpine
2
 
3
- ENV TZ Asia/Shanghai
4
- ENV DEBIAN_FRONTEND=noninteractive
5
 
6
- RUN apk update && \
7
- apk add go curl bash
8
 
9
- WORKDIR /XxxX
 
10
 
11
- RUN chmod 777 /XxxX
12
- RUN mkdir -p /.cache/go-build
13
- RUN chmod 777 /.cache/go-build
14
 
15
- CMD curl -o proxy.go "$Token" && go run proxy.go
 
 
1
+ # Build Stage
2
+ # 使用 golang:alpine 作为构建阶段的基础镜像
3
+ FROM golang:alpine AS builder
4
+
5
+ # 添加 git,以便之后能从GitHub克隆项目
6
+ RUN apk --no-cache add git
7
+
8
+ # 从 GitHub 克隆 go-proxy-bingai 项目到 /workspace/app 目录下
9
+ RUN git clone https://github.com/Harry-zklcdc/go-proxy-bingai.git /workspace/app
10
+
11
+ # 设置工作目录为之前克隆的项目目录
12
+ WORKDIR /workspace/app
13
+
14
+ # 编译 go 项目。-ldflags="-s -w" 是为了减少编译后的二进制大小
15
+ RUN go build -ldflags="-s -w" -tags netgo -trimpath -o go-proxy-bingai main.go
16
+
17
+ # Runtime Stage
18
+ # 使用轻量级的 alpine 镜像作为运行时的基础镜像
19
  FROM alpine
20
 
21
+ # 设置工作目录
22
+ WORKDIR /workspace/app
23
 
24
+ # 从构建阶段复制编译后的二进制文件到运行时镜像中
25
+ COPY --from=builder /workspace/app/go-proxy-bingai .
26
 
27
+ # 设置环境变量,此处为随机字符
28
+ ENV Go_Proxy_BingAI_USER_TOKEN_1="kJs8hD92ncMzLaoQWYtX5rG6bE3fZ4iO"
29
 
30
+ # 暴露8080端口
31
+ EXPOSE 8080
 
32
 
33
+ # 容器启动时运行的命令
34
+ CMD ["/workspace/app/go-proxy-bingai"]