Add container build for deployment

Standalone Next output, migration script run on start, storage volume
at /app/storage, port 4700. Database connection is created lazily so
the image builds without a database.
This commit is contained in:
Matthias Giesselmann
2026-07-31 21:52:38 +02:00
parent b90ff252d1
commit 7582c64709
6 changed files with 114 additions and 7 deletions
+18
View File
@@ -0,0 +1,18 @@
import { migrate } from 'drizzle-orm/node-postgres/migrator'
import { drizzle } from 'drizzle-orm/node-postgres'
import pg from 'pg'
const url = process.env.DATABASE_URL
if (!url) {
console.error('[migrate] DATABASE_URL is required')
process.exit(1)
}
const pool = new pg.Pool({ connectionString: url, max: 1 })
const db = drizzle(pool)
console.log('[migrate] running logbuch migrations')
await migrate(db, { migrationsFolder: './drizzle' })
console.log('[migrate] done')
await pool.end()