🐛 Drizzle not using DATABASE_URL

This commit is contained in:
Meier Lukas
2023-09-28 22:03:01 +02:00
parent 1857520fbf
commit 834a80cbfe
7 changed files with 19 additions and 5 deletions

1
.gitignore vendored
View File

@@ -60,6 +60,7 @@ public/locales/*
#database
sqlite.db
database/*.sqlite
WILL_BE_OVERWRITTEN.sqlite
# IDE
.idea/*

View File

@@ -18,6 +18,7 @@ COPY .next/standalone ./
COPY .next/static ./.next/static
COPY ./scripts/run.sh ./scripts/run.sh
COPY ./drizzle ./drizzle
RUN mkdir database
COPY ./src/migrate.ts ./src/migrate.ts
# Install dependencies
@@ -27,13 +28,13 @@ RUN apt-get update -y && apt-get install -y openssl
RUN cp -r node_modules node_modules_cache
RUN rm -rf node_modules
RUN rm package.json
RUN yarn add typescript ts-node drizzle-orm@0.28.6 better-sqlite3@8.6.0 @types/better-sqlite3
RUN yarn add typescript ts-node dotenv drizzle-orm@0.28.6 better-sqlite3@8.6.0 @types/better-sqlite3
# Expose the default application port
EXPOSE $PORT
ENV PORT=${PORT}
ENV DATABASE_URL "file:./db.sqlite"
ENV DATABASE_URL "file:./database/db.sqlite"
ENV NEXTAUTH_URL "http://localhost:3000"
ENV PORT 7575
ENV NEXTAUTH_SECRET NOT_IN_USE_BECAUSE_JWTS_ARE_UNUSED

0
database/.gitkeep Normal file
View File

View File

@@ -1,6 +1,8 @@
import 'dotenv';
import { type Config } from 'drizzle-kit';
console.log(process.env);
export default {
schema: './src/server/db/schema.ts',
driver: 'better-sqlite',

View File

@@ -1,10 +1,13 @@
// 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';
const sqlite = new Database('sqlite.db');
dotenv.config({ path: __dirname + '/../.env' });
const sqlite = new Database(process.env.DATABASE_URL!.replace('file:', ''));
const db = drizzle(sqlite);

View File

@@ -1,8 +1,9 @@
import Database from 'better-sqlite3';
import { drizzle } from 'drizzle-orm/better-sqlite3';
import { env } from '~/env';
import * as schema from './schema';
const sqlite = new Database('sqlite.db');
const sqlite = new Database(env.DATABASE_URL!.replace('file:', ''));
export const db = drizzle(sqlite, { schema });

View File

@@ -36,5 +36,11 @@
],
"exclude": [
"node_modules"
]
],
"ts-node": {
"esm": true,
"compilerOptions": {
"module": "nodenext",
},
},
}