From 07cfaf0511ed4312269a910203248ff3e1c2c7bd Mon Sep 17 00:00:00 2001 From: Chandler Copeland Date: Fri, 3 Apr 2026 17:21:01 -0600 Subject: [PATCH] fix(docker): add credentials fields to auth provider, postgres service, expose port 5433, AUTH_URL/AUTH_TRUST_HOST in env example --- .../.env.production.example | 1 + teressa-copeland-homes/Dockerfile | 4 ++-- teressa-copeland-homes/docker-compose.yml | 23 ++++++++++++++++++- teressa-copeland-homes/src/lib/auth.ts | 4 ++++ 4 files changed, 29 insertions(+), 3 deletions(-) diff --git a/teressa-copeland-homes/.env.production.example b/teressa-copeland-homes/.env.production.example index 55465e5..a60e188 100644 --- a/teressa-copeland-homes/.env.production.example +++ b/teressa-copeland-homes/.env.production.example @@ -18,3 +18,4 @@ OPENAI_API_KEY=sk-your-openai-key # Application APP_BASE_URL=https://yourdomain.com +AUTH_TRUST_HOST=true diff --git a/teressa-copeland-homes/Dockerfile b/teressa-copeland-homes/Dockerfile index c84692a..d404ce5 100644 --- a/teressa-copeland-homes/Dockerfile +++ b/teressa-copeland-homes/Dockerfile @@ -1,8 +1,8 @@ -# Stage 1: Install production dependencies +# Stage 1: Install all dependencies (including devDeps needed for build) FROM --platform=linux/amd64 node:20-slim AS deps WORKDIR /app COPY package.json package-lock.json ./ -RUN npm ci --omit=dev +RUN npm ci # Stage 2: Build the application FROM --platform=linux/amd64 node:20-slim AS builder diff --git a/teressa-copeland-homes/docker-compose.yml b/teressa-copeland-homes/docker-compose.yml index c36faef..bd60353 100644 --- a/teressa-copeland-homes/docker-compose.yml +++ b/teressa-copeland-homes/docker-compose.yml @@ -1,11 +1,28 @@ services: + db: + image: postgres:16-alpine + restart: unless-stopped + ports: + - "5433:5432" + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: postgres + POSTGRES_DB: teressa + volumes: + - pgdata:/var/lib/postgresql/data + healthcheck: + test: ["CMD-SHELL", "pg_isready -U postgres"] + interval: 5s + timeout: 5s + retries: 5 + app: build: context: . dockerfile: Dockerfile restart: unless-stopped ports: - - "3000:3000" + - "3001:3000" env_file: - .env.production environment: @@ -15,6 +32,10 @@ services: - 1.1.1.1 volumes: - uploads:/app/uploads + depends_on: + db: + condition: service_healthy volumes: uploads: + pgdata: diff --git a/teressa-copeland-homes/src/lib/auth.ts b/teressa-copeland-homes/src/lib/auth.ts index 9303b66..a396fe5 100644 --- a/teressa-copeland-homes/src/lib/auth.ts +++ b/teressa-copeland-homes/src/lib/auth.ts @@ -16,6 +16,10 @@ export const { handlers, auth, signIn, signOut } = NextAuth({ ...authConfig, providers: [ Credentials({ + credentials: { + email: { label: "Email", type: "email" }, + password: { label: "Password", type: "password" }, + }, async authorize(credentials) { const parsed = loginSchema.safeParse(credentials); if (!parsed.success) return null;