Deployment
Vercel menjalankan aplikasi Next.js. Data berada di Turso/libSQL remote, sedangkan file disimpan di Vercel Blob privat. vercel.json mengatur bun install --frozen-lockfile, bun run build:vercel, dan region cle1 (Cleveland, us-east-2) agar server dekat dengan database Turso di Ohio. Jika lokasi database berubah, sesuaikan region fungsi. Build produksi mencatat region endpoint database tanpa menampilkan URL atau token.
Build dan migrasi
Jika VERCEL_ENV=production, scripts/vercel-build.mjs menerapkan migrasi libSQL sebelum menjalankan bun run build. Build lokal membuat Prisma Client dan mengompilasi pesan Paraglide. Build tidak mengisi database dengan seed.
Prisma CLI memakai database lokal dari LOCAL_DATABASE_URL. Untuk memeriksa atau menerapkan migrasi remote, gunakan script berikut:
bun run db:migrate:remote:status
bun run db:migrate:remoteKedua perintah membaca .env.remote, yang diabaikan Git. Pastikan file itu menunjuk ke database yang benar sebelum menerapkan migrasi. db:setup:remote juga mengisi seed demo, jadi jangan pakai untuk deployment rutin.
Preview
Pisahkan database dan Blob store preview dari production. Vercel tidak menerapkan migrasi saat build preview; siapkan skemanya lebih dulu. Di preview, cek login, target publik, pengajuan, file privat, dan resolver share.
Production
bun run deploy:vercel menjalankan Vercel CLI versi yang dipin dan menerbitkan deployment production. Atur DATABASE_URL, DATABASE_AUTH_TOKEN, dan Blob privat melalui project secrets. Jangan masukkan kredensial ke dokumentasi atau commit.
Sebelum dan sesudah deploy, periksa status migrasi, hasil build, header keamanan, dan alur utama. backup:local serta verify:backup hanya menangani demo lokal; keduanya tidak memastikan database remote punya backup.
Cloudflare/OpenNext bukan jalur deployment aktif. vercel.json dan scripts/vercel-build.mjs menentukan konfigurasi operasional saat ini.