diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..c2658d7 --- /dev/null +++ b/.dockerignore @@ -0,0 +1 @@ +node_modules/ diff --git a/Dockerfile b/Dockerfile index 8b55c09..3c32334 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,9 +3,11 @@ FROM denoland/deno:1.40.2 ARG GIT_REVISION ENV DENO_DEPLOYMENT_ID=${GIT_REVISION} +RUN mkdir -p /var/sqlite + WORKDIR /app -ADD . /app +ADD . . RUN deno cache main.ts RUN deno task build @@ -13,4 +15,4 @@ RUN deno task migrate up EXPOSE 8000 -CMD ["run", "-A", "--unstable-ffi", "main.ts"] +CMD ["task", "start"] diff --git a/compose.yaml b/compose.yaml index cbd0e2b..6ac6f45 100644 --- a/compose.yaml +++ b/compose.yaml @@ -4,4 +4,6 @@ services: ports: - "8000:8000" volumes: - - .:/app + - sqlite_data:/var/sqlite +volumes: + sqlite_data: diff --git a/deno.json b/deno.json index 2106675..ec20d32 100644 --- a/deno.json +++ b/deno.json @@ -4,9 +4,9 @@ "check": "deno fmt --check && deno lint && deno check **/*.ts && deno check **/*.tsx", "cli": "echo \"import '\\$fresh/src/dev/cli.ts'\" | deno run --unstable -A -", "manifest": "deno task cli manifest $(pwd)", - "start": "deno run -A --unstable-ffi --watch=static/,routes/,src/ dev.ts", + "dev": "deno run -A --unstable-ffi --watch=static/,routes/,src/ dev.ts", "build": "deno run -A --unstable-ffi dev.ts build", - "preview": "deno run -A --unstable-ffi main.ts", + "start": "deno run -A --unstable-ffi main.ts", "update": "deno run -A --unstable-ffi -r https://fresh.deno.dev/update .", "migrate": "deno run -A --unstable-ffi scripts/migrate.ts", "ttag": "deno run -A --unstable-ffi npm:ttag-cli", diff --git a/src/services/db.ts b/src/services/db.ts index a0a4067..d876011 100644 --- a/src/services/db.ts +++ b/src/services/db.ts @@ -1,9 +1,9 @@ import { Kysely } from "kysely"; import { Database } from "sqlite3"; import { SqliteDialect } from "kysely-deno-sqlite3"; -import { join } from "$std/path/join.ts"; -const path = join(Deno.cwd(), "db.sqlite"); +const path = Deno.env.get("DATABASE_PATH") ?? + "/var/sqlite/reset_sender_v2.sqlite"; const sqlite = new Database(path); sqlite.exec("PRAGMA journal_mode = WAL;");