fix(docker): restore runtime NEXT_PUBLIC vars, add DEFAULT_LOCALE build arg
- Restore NEXT_PUBLIC_SUPABASE_URL + NEXT_PUBLIC_SUPABASE_PUBLIC_KEY at runtime (server code reads from process.env — needs these for SSR) - Use external URL (API_EXTERNAL_URL) for both build and runtime - Add NEXT_PUBLIC_DEFAULT_LOCALE=de as Dockerfile build arg so next-intl compiles with the correct default locale (was falling back to 'en') - CACHE_BUST=3 to force full rebuild
This commit is contained in:
@@ -4,7 +4,7 @@ WORKDIR /app
|
|||||||
|
|
||||||
# --- Install + Build in one stage ---
|
# --- Install + Build in one stage ---
|
||||||
FROM base AS builder
|
FROM base AS builder
|
||||||
ARG CACHE_BUST=2
|
ARG CACHE_BUST=3
|
||||||
COPY . .
|
COPY . .
|
||||||
RUN pnpm install --no-frozen-lockfile
|
RUN pnpm install --no-frozen-lockfile
|
||||||
ENV NEXT_TELEMETRY_DISABLED=1
|
ENV NEXT_TELEMETRY_DISABLED=1
|
||||||
@@ -14,9 +14,11 @@ ENV NEXT_TELEMETRY_DISABLED=1
|
|||||||
ARG NEXT_PUBLIC_SITE_URL=https://myeasycms.de
|
ARG NEXT_PUBLIC_SITE_URL=https://myeasycms.de
|
||||||
ARG NEXT_PUBLIC_SUPABASE_URL=http://localhost:8000
|
ARG NEXT_PUBLIC_SUPABASE_URL=http://localhost:8000
|
||||||
ARG NEXT_PUBLIC_SUPABASE_PUBLIC_KEY
|
ARG NEXT_PUBLIC_SUPABASE_PUBLIC_KEY
|
||||||
|
ARG NEXT_PUBLIC_DEFAULT_LOCALE=de
|
||||||
ENV NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL}
|
ENV NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL}
|
||||||
ENV NEXT_PUBLIC_SUPABASE_URL=${NEXT_PUBLIC_SUPABASE_URL}
|
ENV NEXT_PUBLIC_SUPABASE_URL=${NEXT_PUBLIC_SUPABASE_URL}
|
||||||
ENV NEXT_PUBLIC_SUPABASE_PUBLIC_KEY=${NEXT_PUBLIC_SUPABASE_PUBLIC_KEY}
|
ENV NEXT_PUBLIC_SUPABASE_PUBLIC_KEY=${NEXT_PUBLIC_SUPABASE_PUBLIC_KEY}
|
||||||
|
ENV NEXT_PUBLIC_DEFAULT_LOCALE=${NEXT_PUBLIC_DEFAULT_LOCALE}
|
||||||
RUN pnpm --filter web build
|
RUN pnpm --filter web build
|
||||||
|
|
||||||
# --- Run ---
|
# --- Run ---
|
||||||
|
|||||||
@@ -321,13 +321,14 @@ services:
|
|||||||
environment:
|
environment:
|
||||||
NODE_ENV: production
|
NODE_ENV: production
|
||||||
NEXT_PUBLIC_SITE_URL: ${SITE_URL:-http://localhost:3000}
|
NEXT_PUBLIC_SITE_URL: ${SITE_URL:-http://localhost:3000}
|
||||||
# NEXT_PUBLIC_ vars are baked at build time — runtime values only apply
|
# Must match the build-time value — server code reads from process.env
|
||||||
# to middleware/API routes. Don't override with Docker-internal URLs.
|
NEXT_PUBLIC_SUPABASE_URL: ${API_EXTERNAL_URL:-http://localhost:8000}
|
||||||
|
NEXT_PUBLIC_SUPABASE_PUBLIC_KEY: ${SUPABASE_ANON_KEY}
|
||||||
|
NEXT_PUBLIC_DEFAULT_LOCALE: de
|
||||||
SUPABASE_SECRET_KEY: ${SUPABASE_SERVICE_ROLE_KEY}
|
SUPABASE_SECRET_KEY: ${SUPABASE_SERVICE_ROLE_KEY}
|
||||||
SUPABASE_DB_WEBHOOK_SECRET: ${DB_WEBHOOK_SECRET:-webhooksecret}
|
SUPABASE_DB_WEBHOOK_SECRET: ${DB_WEBHOOK_SECRET:-webhooksecret}
|
||||||
EMAIL_SENDER: ${EMAIL_SENDER:-noreply@myeasycms.de}
|
EMAIL_SENDER: ${EMAIL_SENDER:-noreply@myeasycms.de}
|
||||||
NEXT_PUBLIC_PRODUCT_NAME: MyEasyCMS
|
NEXT_PUBLIC_PRODUCT_NAME: MyEasyCMS
|
||||||
NEXT_PUBLIC_DEFAULT_LOCALE: de
|
|
||||||
NEXT_PUBLIC_ENABLE_THEME_TOGGLE: "true"
|
NEXT_PUBLIC_ENABLE_THEME_TOGGLE: "true"
|
||||||
NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS: "true"
|
NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS: "true"
|
||||||
NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_CREATION: "true"
|
NEXT_PUBLIC_ENABLE_TEAM_ACCOUNTS_CREATION: "true"
|
||||||
|
|||||||
Reference in New Issue
Block a user