This commit is contained in:
2026-03-12 20:27:11 -05:00
parent e007d54fb3
commit 13f53badc3
4 changed files with 19 additions and 9 deletions

View File

@@ -17,7 +17,7 @@ COPY . .
# Generate Prisma Client (with SQLite) # Generate Prisma Client (with SQLite)
ENV DATABASE_URL="file:/app/data/dev.db" ENV DATABASE_URL="file:/app/data/dev.db"
ENV PRISMA_CLIENT_ENGINE_TYPE=binary ENV PRISMA_CLIENT_ENGINE_TYPE=library
RUN npx prisma generate RUN npx prisma generate
# Disable telemetry during build # Disable telemetry during build

View File

@@ -1,8 +1,15 @@
/** @type {import("next").NextConfig} */ /** @type {import("next").NextConfig} */
console.log("Loading next.config.mjs with serverExternalPackages");
const nextConfig = { const nextConfig = {
output: "standalone", output: "standalone",
serverExternalPackages: ["@prisma/client", "prisma"], serverExternalPackages: ["@prisma/client", "prisma"],
webpack: (config, { isServer }) => {
if (isServer) {
// Ensure Prisma is never bundled by webpack
const existingExternals = Array.isArray(config.externals) ? config.externals : [];
config.externals = [...existingExternals, '@prisma/client', 'prisma'];
}
return config;
},
}; };
export default nextConfig; export default nextConfig;

View File

@@ -3,7 +3,7 @@
generator client { generator client {
provider = "prisma-client-js" provider = "prisma-client-js"
engineType = "binary" engineType = "library"
} }
datasource db { datasource db {

View File

@@ -4,10 +4,13 @@ const globalForPrisma = globalThis as unknown as {
prisma: PrismaClient | undefined prisma: PrismaClient | undefined
} }
export const prisma = function getPrisma(): PrismaClient {
globalForPrisma.prisma ?? if (!globalForPrisma.prisma) {
new PrismaClient({ globalForPrisma.prisma = new PrismaClient({
log: process.env.NODE_ENV === 'development' ? ['query', 'error', 'warn'] : ['error'], log: process.env.NODE_ENV === 'development' ? ['query', 'error', 'warn'] : ['error'],
}) })
}
return globalForPrisma.prisma
}
if (process.env.NODE_ENV !== 'production') globalForPrisma.prisma = prisma export const prisma = getPrisma()