feat(docker): enhance Dockerfile with entrypoint script and additional packages
quality / commitlint (push) Skipped
CD / update-wiki (push) Successful in 6s
quality / changes (push) Successful in 10s
quality / web (push) Skipped
quality / docker-check (push) Skipped
quality / api (push) Successful in 55s
CD / quality (push) Successful in 1m8s
CD / publish (push) Successful in 1m59s
quality / commitlint (push) Skipped
CD / update-wiki (push) Successful in 6s
quality / changes (push) Successful in 10s
quality / web (push) Skipped
quality / docker-check (push) Skipped
quality / api (push) Successful in 55s
CD / quality (push) Successful in 1m8s
CD / publish (push) Successful in 1m59s
- Added `su-exec` to the Docker image for improved user switching. - Introduced a custom entrypoint script to manage container startup. - Ensured the creation of necessary directories with appropriate permissions. - Updated health check configurations for better reliability.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
import { dirname, join } from "node:path";
|
||||
import { fileURLToPath } from "node:url";
|
||||
import { readFileSync, readdirSync } from "node:fs";
|
||||
import { mkdirSync, readFileSync, readdirSync } from "node:fs";
|
||||
import Database from "better-sqlite3";
|
||||
import { drizzle } from "drizzle-orm/better-sqlite3";
|
||||
import { schema } from "./schema.js";
|
||||
@@ -19,6 +19,8 @@ export function resolveDatabasePath(databaseUrl: string): string {
|
||||
|
||||
export function createDb(databaseUrl: string): { db: Db; sqlite: Sqlite } {
|
||||
const path = resolveDatabasePath(databaseUrl);
|
||||
const dir = dirname(path);
|
||||
if (dir && dir !== ".") mkdirSync(dir, { recursive: true });
|
||||
const sqlite = new Database(path);
|
||||
sqlite.pragma("journal_mode = WAL");
|
||||
sqlite.pragma("synchronous = NORMAL");
|
||||
|
||||
Reference in New Issue
Block a user