feat: moved db config from url to individual keys

Signed-off-by: Varun Raj <varun@skcript.com>
This commit is contained in:
Varun Raj
2025-01-05 15:52:31 +05:30
parent fdda358ab1
commit a3e12c8c0d
2 changed files with 13 additions and 2 deletions
+7 -1
View File
@@ -5,9 +5,15 @@ import { ENV } from "./environment";
import * as schema from "@/schema";
import { sql } from 'drizzle-orm';
const pool = new Pool({
const pool = ENV.DATABASE_URL ? new Pool({
connectionString: ENV.DATABASE_URL,
keepAlive: true,
}) : new Pool({
user: ENV.DB_USERNAME,
password: ENV.DB_PASSWORD,
host: ENV.DB_HOST,
port: parseInt(ENV.DB_PORT),
database: ENV.DB_DATABASE_NAME,
});
class DatabaseConnectionError extends Error {
+6 -1
View File
@@ -2,7 +2,12 @@ export const ENV = {
IMMICH_URL: (process.env.IMMICH_URL || 'http://immich_server:2283') as string,
EXTERNAL_IMMICH_URL: (process.env.EXTERNAL_IMMICH_URL || process.env.IMMICH_URL) as string,
IMMICH_API_KEY: process.env.IMMICH_API_KEY as string,
DATABASE_URL: (process.env.DATABASE_URL || `postgresql://${process.env.DB_USERNAME}:${process.env.DB_PASSWORD}@${(process.env.DB_HOST || 'immich_postgres')}:${(process.env.DB_PORT || '5432')}/${process.env.DB_DATABASE_NAME}`),
DATABASE_URL: process.env.DATABASE_URL as string,
DB_USERNAME: process.env.DB_USERNAME as string,
DB_PASSWORD: process.env.DB_PASSWORD as string,
DB_HOST: process.env.DB_HOST as string,
DB_PORT: process.env.DB_PORT as string,
DB_DATABASE_NAME: process.env.DB_DATABASE_NAME as string,
JWT_SECRET: process.env.JWT_SECRET as string,
SECURE_COOKIE: process.env.SECURE_COOKIE === 'true',
VERSION: process.env.VERSION,