Spaces:
Running
Running
FROM golang:1.22.2-alpine3.19 AS builder | |
#ENV GOPROXY=https://goproxy.cn,direct | |
WORKDIR /app | |
# 安装 git | |
RUN apk add git && git clone https://github.com/kkkunny/HuggingChatAPI.git . | |
# 添加 ARG 指令来接收构建时参数 | |
ARG HF_DOMAIN | |
# 使用 ENV 指令设置环境变量 | |
ENV HF_DOMAIN $HF_DOMAIN | |
RUN awk '/const HuggingChatDomain = "https:\/\/huggingface.co"/ { print "import \"os\""; print "var HuggingChatDomain = os.Getenv(\"HF_DOMAIN\")"; next }1' /app/internal/config/domain.go > temp && mv temp /app/internal/config/domain.go | |
RUN sed -i 's|/v1/|/api/v1/|g' /app/main.go | |
RUN sed -i 's|:80|:8000|g' /app/main.go | |
RUN go build -o bin/server . | |
FROM alpine:3.19 AS final | |
RUN apk --no-cache add tzdata && \ | |
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \ | |
echo "Asia/Shanghai" > /etc/timezone \ | |
ENV TZ Asia/Shanghai | |
RUN apk add --no-cache ca-certificates && update-ca-certificates | |
WORKDIR /app | |
COPY --from=builder /app/bin/* /app | |
EXPOSE 8000 | |
ENTRYPOINT ["/app/server"] |