Commit be9f80e3 by luoqi

build: 前端 Sentry NEXT_PUBLIC_* 走 build-arg 注入(同 API_BASE_URL)

pac-web 的 NEXT_PUBLIC_SENTRY_DSN/ENVIRONMENT/TRACES_SAMPLE_RATE 需 build-time inline,
故 Dockerfile 加 ARG/ENV、compose build.args 加对应项(未设则空→前端 Sentry no-op,不阻塞构建)。
后端 SENTRY_* 是运行期 env,已由 env_file: apps/pac-service/.env 注入,无需改。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
parent 640ba3f9
......@@ -25,6 +25,13 @@ FROM deps AS build
# NEXT_PUBLIC_* 必须 build-time 注入(Next.js 把它们 inline 进客户端 bundle)
ARG NEXT_PUBLIC_API_BASE_URL
ENV NEXT_PUBLIC_API_BASE_URL=${NEXT_PUBLIC_API_BASE_URL}
# Sentry(前端 DSN 公开,build-time inline;缺省则前端 Sentry no-op)
ARG NEXT_PUBLIC_SENTRY_DSN
ENV NEXT_PUBLIC_SENTRY_DSN=${NEXT_PUBLIC_SENTRY_DSN}
ARG NEXT_PUBLIC_SENTRY_ENVIRONMENT
ENV NEXT_PUBLIC_SENTRY_ENVIRONMENT=${NEXT_PUBLIC_SENTRY_ENVIRONMENT}
ARG NEXT_PUBLIC_SENTRY_TRACES_SAMPLE_RATE
ENV NEXT_PUBLIC_SENTRY_TRACES_SAMPLE_RATE=${NEXT_PUBLIC_SENTRY_TRACES_SAMPLE_RATE}
COPY . .
RUN pnpm --filter "./packages/*" build
WORKDIR /app/apps/pac-web
......
......@@ -114,6 +114,10 @@ services:
# build-time inline 进客户端 bundle,改了必须 --build
# 来自 apps/pac-web/.env(启动时用 --env-file 指定那份)
NEXT_PUBLIC_API_BASE_URL: ${NEXT_PUBLIC_API_BASE_URL}
# Sentry:未设则空(前端 Sentry no-op),不阻塞构建
NEXT_PUBLIC_SENTRY_DSN: ${NEXT_PUBLIC_SENTRY_DSN:-}
NEXT_PUBLIC_SENTRY_ENVIRONMENT: ${NEXT_PUBLIC_SENTRY_ENVIRONMENT:-}
NEXT_PUBLIC_SENTRY_TRACES_SAMPLE_RATE: ${NEXT_PUBLIC_SENTRY_TRACES_SAMPLE_RATE:-0.1}
restart: always
depends_on:
- pac-service
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment