taskmanager/docker-compose.yml

50 lines
1.1 KiB
YAML

version: '3.8'
services:
# PostgreSQL Datenbank
db:
image: postgres:16-alpine
container_name: taskmanager-db
restart: unless-stopped
environment:
POSTGRES_USER: taskmanager
POSTGRES_PASSWORD: taskmanager123
POSTGRES_DB: taskmanager
volumes:
- postgres_data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U taskmanager"]
interval: 10s
timeout: 5s
retries: 5
# Task Manager App
app:
build:
context: .
dockerfile: Dockerfile
container_name: taskmanager-app
restart: unless-stopped
depends_on:
db:
condition: service_healthy
environment:
# Datenbank-Verbindung
DATABASE_URL: postgresql://taskmanager:taskmanager123@db:5432/taskmanager
# NextAuth Konfiguration
NEXTAUTH_URL: http://localhost:3000
NEXTAUTH_SECRET: super-geheimes-secret-bitte-in-produktion-aendern
# Node Environment
NODE_ENV: production
volumes:
# Upload-Ordner persistent machen
- uploads:/app/public/uploads
# ports:
# - "3000:3000"
volumes:
postgres_data:
uploads: