fix: Improve database persistence in Koyeb deployment

- Remove forced database initialization from Dockerfile CMD
- App now auto-initializes database on startup without data loss
- Skip sample data creation in production environment
- Ensure admin user exists in production without recreating
- Fixes database reset issue on every Koyeb deployment
- Maintains data persistence with proper volume mounting
This commit is contained in:
patdelphi
2025-08-22 17:09:18 +08:00
parent 8657600c21
commit 65bd6a7759
3 changed files with 33 additions and 4 deletions

View File

@@ -38,8 +38,12 @@ async function initializeDatabase() {
console.log(' 管理员用户已存在');
}
// 创建示例数据(可选)
await createSampleData(db);
// 仅在开发环境创建示例数据
if (process.env.NODE_ENV !== 'production') {
await createSampleData(db);
} else {
console.log(' 生产环境,跳过示例数据创建');
}
console.log('🎉 数据库初始化完成!');
console.log(`📍 数据库文件位置: ${path.resolve('./numerology.db')}`);