| |
| FROM golang:1.26-alpine AS builder |
|
|
| RUN apk add --no-cache git |
|
|
| WORKDIR /app |
|
|
| |
| RUN git clone https://github.com/router-for-me/CLIProxyAPI.git . && \ |
| go mod download |
|
|
| |
| ARG VERSION=dev |
| ARG COMMIT=none |
| ARG BUILD_DATE=unknown |
|
|
| RUN CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w -X 'main.Version=${VERSION}' -X 'main.Commit=${COMMIT}' -X 'main.BuildDate=${BUILD_DATE}'" -o ./CLIProxyAPI ./cmd/server/ |
|
|
| |
| FROM alpine:3.22.0 |
|
|
| RUN apk add --no-cache tzdata |
|
|
| |
| RUN mkdir -p /tmp/cliproxy_data |
|
|
| |
| ENV MANAGEMENT_STATIC_PATH="/tmp/cliproxy_data/static" \ |
| PGSTORE_LOCAL_PATH="/tmp/cliproxy_data/cache.db" \ |
| TZ=Asia/Shanghai |
|
|
| RUN mkdir /CLIProxyAPI |
|
|
| |
| COPY --from=builder /app/CLIProxyAPI /CLIProxyAPI/CLIProxyAPI |
|
|
| |
| COPY --from=builder /app/config.example.yaml /CLIProxyAPI/config.example.yaml |
|
|
| WORKDIR /CLIProxyAPI |
|
|
| EXPOSE 8317 |
|
|
| |
| RUN cp /usr/share/zoneinfo/${TZ} /etc/localtime && echo "${TZ}" > /etc/timezone |
|
|
| CMD ["./CLIProxyAPI"] |