services: backend: build: context: . dockerfile: apps/backend/Dockerfile container_name: launchpad-backend restart: unless-stopped env_file: - path: ./.env required: false environment: - DATABASE_PATH=/data/launchpad.db - PORT=3001 - HOST=0.0.0.0 - NODE_ENV=production volumes: - launchpad-data:/data - ./apps/backend/plugins:/app/plugins:ro ports: - "3001:3001" frontend: build: context: . dockerfile: apps/frontend/Dockerfile container_name: launchpad-frontend restart: unless-stopped env_file: - path: ./.env required: false depends_on: - backend ports: - "8080:80" - "8443:443" # Optional: eigenes Zertifikat statt des automatisch generierten # selbstsignierten einbinden (z. B. per mkcert erzeugt, siehe README): # volumes: # - ./certs/fullchain.pem:/etc/nginx/certs/fullchain.pem:ro # - ./certs/privkey.pem:/etc/nginx/certs/privkey.pem:ro volumes: launchpad-data: name: launchpad-data