feat: marketplace modules and isolated container management

This commit is contained in:
ayde64
2026-10-07 23:18:02 +02:00
parent 564f7def1c
commit 7b121fa908
68 changed files with 2560 additions and 699 deletions

View File

@@ -22,17 +22,39 @@ DATABASE_URL=postgresql://mpm:<sicheres-passwort>@postgres:5432/mpm
# Session-Gültigkeit in Minuten (kurz halten)
SESSION_TTL_MINUTES=120
# "true" sobald die Plattform hinter HTTPS/TLS betrieben wird
COOKIE_SECURE=false
COOKIE_SECURE=true
# "true", wenn ein Reverse Proxy (Nginx im Container) vorgeschaltet ist
BEHIND_PROXY=true
# GID der Docker-Socket-Gruppe auf dem Host (Docker Desktop meist 0).
# MPM braucht den Socket, um eigene Modul-Container zu verwalten.
DOCKER_SOCKET_GID=0
# GID der Docker-Socket-Gruppe auf dem Host (Docker Desktop meist 0).
# MPM benötigt den Docker-Socket, um Modul-Stacks zu verwalten.
DOCKER_SOCKET_GID=0
# --- Initialer Admin (nur beim ersten Start angelegt) -----------
ADMIN_USERNAME=admin
ADMIN_EMAIL=admin@example.com
ADMIN_PASSWORD=<mindestens-10-zeichen>
# --- Marketplace OAuth (optional) --------------------------------
# Lokal: Host-Adresse einschließlich APP_PORT; Callback-Pfad wird von MPM ergänzt.
MARKETPLACE_PUBLIC_URL=http://127.0.0.1:8080
# Zufälliger, dauerhafter Wert (mindestens 32 Zeichen), z. B. openssl rand -base64 32.
MARKETPLACE_TOKEN_ENCRYPTION_KEY=
# OAuth-App Callback: http://127.0.0.1:8080/api/v1/marketplace/oauth/github/callback
GITHUB_OAUTH_CLIENT_ID=
GITHUB_OAUTH_CLIENT_SECRET=
# Für eine selbst gehostete Instanz jeweils alle drei Werte setzen.
GITEA_BASE_URL=
GITEA_OAUTH_CLIENT_ID=
GITEA_OAUTH_CLIENT_SECRET=
FORGEJO_BASE_URL=
FORGEJO_OAUTH_CLIENT_ID=
FORGEJO_OAUTH_CLIENT_SECRET=
# --- Login-Schutz (optional, mit Defaults) ----------------------
# LOGIN_MAX_ATTEMPTS=5
# LOGIN_LOCKOUT_MINUTES=15
# LOGIN_RATE_LIMIT_ATTEMPTS=10
# LOGIN_RATE_LIMIT_WINDOW_MINUTES=5
# LOGIN_RATE_LIMIT_WINDOW_MINUTES=5