Files
luna-recipes/docker-compose.yml
clawd 03f3893c2c feat: Smart Shopping List + Household bugfixes
Shopping:
- Merged view (default): same ingredient + unit = summed amounts
  (150g Quark + 300g Quark → 450g Quark)
- Shows which recipes need each ingredient
- Toggle between 'Zusammengefasst' and 'Nach Rezept' views
- Alphabetically sorted in merged view

Household bugfixes:
- Fixed bouncy modal animation (removed Framer Motion spring)
- Fixed clipboard copy on HTTP (textarea fallback)
- Fixed logout on join (JWT secrets mismatch in docker-compose)

Also: mounted backend data/ volume for recipe images
2026-02-18 17:56:29 +00:00

47 lines
1.2 KiB
YAML

services:
db:
image: postgres:17-alpine
restart: unless-stopped
environment:
POSTGRES_DB: luna_recipes
POSTGRES_USER: luna
POSTGRES_PASSWORD: ${DB_PASSWORD:-luna-recipes-secret-2026}
volumes:
- pgdata:/var/lib/postgresql/data
ports:
- "127.0.0.1:5433:5432"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U luna -d luna_recipes"]
interval: 5s
timeout: 3s
retries: 5
backend:
build: ./backend
restart: unless-stopped
depends_on:
db:
condition: service_healthy
volumes:
- ./backend/data:/app/data
environment:
DATABASE_URL: postgresql://luna:${DB_PASSWORD:-luna-recipes-secret-2026}@db:5432/luna_recipes
JWT_SECRET: ${JWT_SECRET:-luna-recipes-jwt-secret-change-in-prod-2026}
JWT_REFRESH_SECRET: ${JWT_REFRESH_SECRET:-luna-recipes-refresh-secret-change-in-prod-2026}
COOKIE_SECRET: ${COOKIE_SECRET:-luna-recipes-cookie-secret-change-in-prod-2026}
PORT: "6001"
NODE_ENV: production
ports:
- "6001:6001"
frontend:
build: ./frontend
restart: unless-stopped
depends_on:
- backend
ports:
- "6100:80"
volumes:
pgdata: