Files
LaunchPad/docker-compose.yml

48 lines
1.2 KiB
YAML

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"
volumes:
# Lokale Root-CA + Server-Zertifikat, vom Container selbst erzeugt
# (siehe apps/frontend/docker-entrypoint.sh). Als Volume, damit die CA
# über Neustarts/Rebuilds stabil bleibt - einmal pro Gerät importiert
# (https://<host>:8080/ca.crt), reicht dauerhaft.
- launchpad-certs:/etc/nginx/certs
volumes:
launchpad-data:
name: launchpad-data
launchpad-certs:
name: launchpad-certs