* fix(deps): 升级 pgx/v5 至 5.9.2 并同步 Go 至 1.25 修复 GHSA-9jj7-4m8r-rfcm (CVE-2026-33816, critical, 内存安全) 和 GHSA-j88v-2chj-qfwx (CVE-2026-41889, low, SQL 注入)。 pgx v5.9.x 要求 go 1.25.0,因此一并把 go.mod、CI 工作流、 Dockerfile 中的 Go 版本声明从 1.24 抬到 1.25。 * fix(web): 升级前端依赖修复 12 个 npm 安全告警 通过 npm audit fix 在 semver 范围内升级 lockfile,未改 package.json: - rollup 4.57→4.60 修复路径穿越文件写入 (GHSA-mw96-cpmx-2vgc) - vite 6.4.1→6.4.2 修复路径穿越与 WS 文件读取 - minimatch 3.1.2/9.0.5→3.1.5/9.0.9 修复 ReDoS - picomatch 2.3.1/4.0.3→2.3.2/4.0.4 修复方法注入与 ReDoS - flatted 3.3.3→3.4.2 修复原型污染 - lodash/lodash-es 4.17.23→4.18.1 修复模板注入与原型污染 - postcss 8.5.6→8.5.14 修复 XSS npm audit 已确认 0 vulnerabilities。
38 lines
762 B
Docker
38 lines
762 B
Docker
FROM --platform=$BUILDPLATFORM node:20-alpine AS builder
|
|
|
|
ARG VERSION=1.0.0
|
|
WORKDIR /build
|
|
COPY ./web/package*.json ./
|
|
RUN npm ci
|
|
COPY ./web .
|
|
RUN VITE_VERSION=${VERSION} npm run build
|
|
|
|
|
|
FROM --platform=$BUILDPLATFORM golang:1.25-alpine AS builder2
|
|
|
|
ARG VERSION=1.0.0
|
|
ARG TARGETOS
|
|
ARG TARGETARCH
|
|
ENV GO111MODULE=on \
|
|
CGO_ENABLED=0
|
|
|
|
WORKDIR /build
|
|
|
|
COPY go.mod go.sum ./
|
|
RUN go mod download
|
|
|
|
COPY . .
|
|
COPY --from=builder /build/dist ./web/dist
|
|
RUN GOOS=${TARGETOS} GOARCH=${TARGETARCH} go build -ldflags "-s -w -X gpt-load/internal/version.Version=${VERSION}" -o gpt-load
|
|
|
|
|
|
FROM alpine
|
|
|
|
WORKDIR /app
|
|
RUN apk add --no-cache ca-certificates tzdata \
|
|
&& update-ca-certificates
|
|
|
|
COPY --from=builder2 /build/gpt-load .
|
|
EXPOSE 3001
|
|
ENTRYPOINT ["/app/gpt-load"]
|