fix(design): OG-Image + Build-Hash

OG-Image: Next.js 16 / Satori verlangt 'display: flex' (oder contents/none) auf
jedem Container-Div mit mehreren Children. Vorher crashte das Image-Rendering
mit 'Expected <div> to have explicit display: ...'. Jetzt: alle Container
haben display: flex, Image rendert sauber.

Build-Hash: Dockerfile hat die ENV-Vars NEXT_PUBLIC_BUILD_HASH/DATE zwar als
ENV deklariert, aber sie landeten nicht im finalen Image (ENV in Build-Stage
verschwindet im Standalone-Build). Fix: schreibe die Werte in eine
.env.production.local vor dem Build — Next.js liest die in der Build-Phase,
bakt sie in den Client/Server-Code, und der Standalone-Output enthält sie.
This commit is contained in:
Jan Wagner
2026-08-31 21:01:41 +02:00
parent 88b3af4ba8
commit b056fbc5c4
2 changed files with 15 additions and 14 deletions
+4 -3
View File
@@ -18,10 +18,11 @@ ENV NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL}
ENV NEXT_PUBLIC_BUILD_HASH=${NEXT_PUBLIC_BUILD_HASH}
ENV NEXT_PUBLIC_BUILD_DATE=${NEXT_PUBLIC_BUILD_DATE}
ENV NEXT_TELEMETRY_DISABLED=1
RUN COMMIT=$(git rev-parse --short HEAD 2>/dev/null || echo ${NEXT_PUBLIC_BUILD_HASH}) && \
RUN COMMIT=$(git rev-parse --short HEAD 2>/dev/null || echo "${NEXT_PUBLIC_BUILD_HASH}") && \
DATE=$(date -u +%Y-%m-%d) && \
echo "NEXT_PUBLIC_BUILD_HASH=${COMMIT}" >> .env.build && \
echo "NEXT_PUBLIC_BUILD_DATE=${DATE}" >> .env.build && \
echo "NEXT_PUBLIC_BUILD_HASH=${COMMIT}" > .env.production.local && \
echo "NEXT_PUBLIC_BUILD_DATE=${DATE}" >> .env.production.local && \
cat .env.production.local && \
npm run build
FROM node:22.13-bookworm-slim AS runner