SQL and Seed into App
Docker Image bauen und veroeffentlichen / build-and-push (push) Successful in 1m38s

This commit is contained in:
Nick Szaunig committed 2026-08-19 07:57:45 +02:00
1 parent d207c8b2b2
commit 484da97b2e
1 file changed
+11 -10
+11 -10
View File
@@ -67,16 +67,17 @@ COPY scripts ./scripts
COPY src/lib/db-adapter.ts ./src/lib/db-adapter.ts
COPY src/lib/password-breach-check.ts ./src/lib/password-breach-check.ts
COPY --from=builder /app/src/generated ./src/generated
# Eigener node_modules-Baum nur fuer Migrationen/Seed (prisma-CLI/tsx),
# getrennt vom node_modules des Next.js-Standalone-Outputs oben (das ist
# eine von Next.js kopierte, nicht pnpm-verwaltete Teilmenge — "pnpm add"
# wuerde dort kollidieren). PATH macht "prisma"/"tsx" ausfuehrbar,
# NODE_PATH ist ein Fallback fuer Node-Modulaufloesung, falls tsx beim
# Ausfuehren von prisma/seed.ts ein Paket braucht, das der Next.js-Tracer
# nicht schon ins Standalone-node_modules uebernommen hat.
COPY --chown=nextjs:nodejs --from=migrator /app/node_modules ./migrate-tools/node_modules
ENV PATH="/app/migrate-tools/node_modules/.bin:${PATH}"
ENV NODE_PATH="/app/migrate-tools/node_modules"
# Migrations-/Seed-Pakete (prisma-CLI/tsx/dotenv) DIREKT ins selbe
# node_modules wie der Next.js-Standalone-Output kopieren (ueberlagert dort
# nur exakt dieselben Paketversionen, die builder bereits fuer next/react
# aufgeloest hat) statt in einen separaten Baum + PATH/NODE_PATH-Trick: der
# generierte Prisma-Client + tsx nutzen Node's ESM-Modulaufloesung, die
# NODE_PATH schlicht ignoriert (nur ein CommonJS-"require()"-Feature) —
# fuehrte zu "Cannot find package '@prisma/client'" beim Seed-Lauf. Die
# normale node_modules-Huelle nach oben (von jeder Datei unter /app/ aus)
# funktioniert dagegen fuer beide Modulsysteme zuverlaessig.
COPY --chown=nextjs:nodejs --from=migrator /app/node_modules ./node_modules
ENV PATH="/app/node_modules/.bin:${PATH}"
USER nextjs
EXPOSE 3000