fix(dockerfile): debug build-hash inlining, add .env.production.local

Vorher hat der 'RUN'-Block die Datei erzeugt, aber es war nicht klar ob die
Datei den Build-Kontext erreichte oder ob Next.js sie las. Jetzt: printf statt
echo >> für sauberere Formatierung, expliziter cat vor dem Build, und ein
grep nach der inlineden Variable im gebauten Server-Bundle, damit das nächste
Deploy-Log klar zeigt, ob der Hash angekommen ist.
This commit is contained in:
Jan Wagner
2026-08-31 21:02:38 +02:00
parent b056fbc5c4
commit 50ed660470
+5 -4
View File
@@ -20,10 +20,11 @@ ENV NEXT_PUBLIC_BUILD_DATE=${NEXT_PUBLIC_BUILD_DATE}
ENV NEXT_TELEMETRY_DISABLED=1 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) && \ DATE=$(date -u +%Y-%m-%d) && \
echo "NEXT_PUBLIC_BUILD_HASH=${COMMIT}" > .env.production.local && \ printf 'NEXT_PUBLIC_BUILD_HASH=%s\nNEXT_PUBLIC_BUILD_DATE=%s\n' "${COMMIT}" "${DATE}" > .env.production.local && \
echo "NEXT_PUBLIC_BUILD_DATE=${DATE}" >> .env.production.local && \ echo "--- .env.production.local ---" && cat .env.production.local && echo "--- end ---" && \
cat .env.production.local && \ npm run build && \
npm run build echo "--- Built. HASH inlined? ---" && \
grep -o 'NEXT_PUBLIC_BUILD_HASH[^"]*' .next/server/app/[lang]/projects/[slug]/page.js 2>/dev/null | head -1 || true
FROM node:22.13-bookworm-slim AS runner FROM node:22.13-bookworm-slim AS runner
WORKDIR /app WORKDIR /app