diff --git a/docker-compose.yml b/docker-compose.yml index 6ed97b1..60fe842 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,8 +1,17 @@ services: + migrate: + build: . + command: ["deno", "task", "migrate"] + volumes: + - ${DATA_VOLUME:-data}:/data + jetstream: build: . restart: unless-stopped - command: ["sh", "-c", "deno task migrate && deno task jetstream:prod"] + command: ["deno", "task", "jetstream:prod"] + depends_on: + migrate: + condition: service_completed_successfully volumes: - ${DATA_VOLUME:-data}:/data @@ -10,6 +19,9 @@ services: build: . restart: unless-stopped command: ["deno", "task", "server:prod"] + depends_on: + migrate: + condition: service_completed_successfully expose: - "8080" volumes: diff --git a/src/data/db.ts b/src/data/db.ts index fab974d..e0f5109 100644 --- a/src/data/db.ts +++ b/src/data/db.ts @@ -3,10 +3,10 @@ import type { Note } from "./note.ts"; export const db = new Database(Deno.env.get("SQLITE_PATH") ?? "notes.db"); try { + db.exec("PRAGMA busy_timeout=10000"); db.exec("PRAGMA journal_mode=WAL"); - db.exec("PRAGMA busy_timeout=5000"); const [row] = db.prepare("PRAGMA journal_mode").all<{ journal_mode: string }>(); - console.log(`[db] journal_mode=${row.journal_mode}, busy_timeout=5000`); + console.log(`[db] journal_mode=${row.journal_mode}, busy_timeout=10000`); } catch (e) { console.error("[db] failed to set PRAGMAs:", e); }