🚧 Improve dockerfile and start script and fix permission issue by adding new user with permission to read / write to /data folder
This commit is contained in:
21
drizzle/migrate/migrate.ts
Normal file
21
drizzle/migrate/migrate.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
// This file is used to migrate the database to the current version
|
||||
// It is run when the docker container starts
|
||||
import Database from 'better-sqlite3';
|
||||
import dotenv from 'dotenv';
|
||||
import { drizzle } from 'drizzle-orm/better-sqlite3';
|
||||
import { migrate } from 'drizzle-orm/better-sqlite3/migrator';
|
||||
|
||||
// TODO: Remove
|
||||
// const migrationsFolder = process.argv[2] ?? './drizzle';
|
||||
|
||||
dotenv.config({ path: __dirname + '/../.env' });
|
||||
|
||||
const sqlite = new Database(process.env.DATABASE_URL!.replace('file:', ''));
|
||||
|
||||
const db = drizzle(sqlite);
|
||||
|
||||
const migrateDatabase = async () => {
|
||||
await migrate(db, { migrationsFolder: '../drizzle' });
|
||||
};
|
||||
|
||||
migrateDatabase();
|
||||
13
drizzle/migrate/package.json
Normal file
13
drizzle/migrate/package.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"scripts": {
|
||||
"db:migrate": "ts-node ./migrate.ts"
|
||||
},
|
||||
"dependencies": {
|
||||
"@types/better-sqlite3": "^7.6.7",
|
||||
"better-sqlite3": "8.6.0",
|
||||
"drizzle-orm": "^0.28.6",
|
||||
"dotenv": "^16.3.1",
|
||||
"ts-node": "^10.9.1",
|
||||
"typescript": "^5.2.2"
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user