Add Prisma 7 PostgreSQL adapter

Prisma 7 requires explicit database adapter for runtime connections.
- Install @prisma/adapter-pg + pg
- Update prisma.ts: use PrismaPg adapter with DATABASE_URL
- Update seed.ts: same adapter pattern
- Dockerfile: copy pg deps to runner stage

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-04-07 10:48:08 +05:00
parent 0c88dcc535
commit 1153bcc13a
5 changed files with 212 additions and 9 deletions
+9 -2
View File
@@ -1,10 +1,17 @@
import { PrismaClient } from "@/generated/prisma/client";
import { PrismaPg } from "@prisma/adapter-pg";
const globalForPrisma = globalThis as unknown as {
prisma: PrismaClient | undefined;
};
// In Prisma 7, connection is configured via prisma.config.ts, not in constructor
export const prisma = globalForPrisma.prisma ?? new PrismaClient();
function createPrismaClient() {
const adapter = new PrismaPg({
connectionString: process.env.DATABASE_URL!,
});
return new PrismaClient({ adapter });
}
export const prisma = globalForPrisma.prisma ?? createPrismaClient();
if (process.env.NODE_ENV !== "production") globalForPrisma.prisma = prisma;