File size: 1,369 Bytes
ed68da0 365a9ed d39e36d ed68da0 3252dcf ed68da0 c15fd85 365a9ed ed68da0 8abb5b3 3252dcf 569c46d ed68da0 3252dcf 569c46d 3252dcf 569c46d | 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 35 36 37 38 39 40 41 42 43 44 45 46 47 | # Build Stage
# 使用 golang:alpine 作为构建阶段的基础镜像
FROM golang:alpine AS builder
# 添加 git,以便之后能从GitHub克隆项目
RUN apk --no-cache add git
# 添加 git,
RUN git clone https://github.com/Harry-zklcdc/go-proxy-bingai.git /workspace/app
#RUN git clone https://github.com/renqabs/gopb.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 .
# 将生成 Token 的脚本拷贝到运行时镜像中
COPY generate_token.sh /workspace/app/generate_token.sh
# 设置环境变量,此处为随机字符
ENV Go_Proxy_BingAI_USER_TOKEN=" "
#ENV USER_MUID=" "
# 端口
EXPOSE 8080
# 启动生成 Token 的脚本,并放在后台运行
#CMD ["/workspace/app/generate_token.sh"] &
CMD ["/workspace/app/go-proxy-bingai"]
# 等待一段时间,让生成 Token 的脚本开始运行
#RUN sleep 10
# 启动 go-proxy-bingai
#ENTRYPOINT ["/workspace/app/go-proxy-bingai"]
|