generated from Dicken/dickendock
56 lines
1.6 KiB
YAML
56 lines
1.6 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"
|
|
# Für den optionalen, per masscan beschleunigten vollständigen Portscan
|
|
# (siehe scanner/masscan.ts) - masscan braucht Zugriff auf rohe Sockets.
|
|
# Ohne diese Capabilities funktioniert LaunchPad trotzdem ganz normal,
|
|
# der Portscan fällt dann automatisch auf die eingebaute (langsamere)
|
|
# Methode zurück - kein Muss, aber empfohlen für Tempo.
|
|
cap_add:
|
|
- NET_RAW
|
|
- NET_ADMIN
|
|
|
|
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
|