File size: 1,029 Bytes
b28814e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# build stage
#使用golang:alpine作为构建阶段的基础镜像
FROM golang:alpine As builder

#添加git,以便之后能从GitHub克隆项目
RUN apk --no-cache add git

#从GitHub克隆go-proxy-bingai项目到/workspace/app目录下
RUN git clone https://github.com/Harry-zklcdc/go-proxy-bingai.git /workspace/app

#设置工作目录为之前克隆的项目目录
WORKDIR /workspace/app

#编译go项目。-ldflags="-s -w”是为了减少编译后的二进制大小
RUN go build -ldflags="-s -w" -tags netgo -trimpath -o go-proxy-bingai main.go

#Runtime Stage
#使用轻量级的alpine镜像作为运行时的基础镜像
FROM alpine

#设置工作目录
WORKDIR /workspace/app

#从构建阶段复制编译后的二进制文件到运行时镜像中
COPY --from=builder /workspace/app/go-proxy-bingai .

#设置环境变量,此处为随机字符
ENV Go_Proxy_BingAI_USER_TOKEN_1="aaaahD92ncMzLaoQWYtX5rG6bE3fZ4i0"

#暴露8080端口
EXPOSE 8080

#容器启动时运行的命令
CMD ["/workspace/app/go-proxy-bingai"]