Starten mit Docker Compose
Die schnellste Methode, um LowCode produktionsnah zu betreiben, ist Docker Compose. Diese Anleitung zeigt verschiedene Setup-Varianten – vom einfachen Standalone-Betrieb bis zum Full-Stack-Setup mit Engine und Authority.
Voraussetzungen
- Docker (20.10 oder höher) – Download
- Docker Compose (2.0 oder höher) – in Docker Desktop enthalten
- Webbrowser (Chrome, Firefox, Safari, Edge)
Standalone: Nur LowCode
Das einfachste Setup startet nur den LowCode-Container ohne Engine-Anbindung. Ideal für erste Experimente und die Entwicklung von REST-APIs oder Dashboards.
services:
lowcode:
image: marketplace.processcube.io/processcube-io/processcube_lowcode:latest
ports:
- "1880:1880"
environment:
- NODERED_PORT=1880
- NODERED_NAME=ProcessCube LowCode
- NODERED_AUTH_DISABLED=true
volumes:
- lowcode_data:/data
volumes:
lowcode_data:docker-compose up -dDer Editor ist unter http://localhost:1880 erreichbar.
Full-Stack: LowCode + Engine + Authority
Für die vollständige ProcessCube®-Integration benötigen Sie zusätzlich die Engine und die Authority. Dieses Setup ermöglicht BPMN-Prozesse, UserTasks und OAuth-Authentifizierung.
services:
lowcode:
image: marketplace.processcube.io/processcube-io/processcube_lowcode:latest
ports:
- "1880:1880"
environment:
- NODERED_PORT=1880
- NODERED_NAME=ProcessCube LowCode
- NODERED_BASE_URL=http://localhost:1880
# Engine-Anbindung
- ENGINE_URL=http://engine:8000
# Authority-Anbindung
- NODERED_AUTHORITY_URL=http://authority:11560
- NODERED_CLIENT_ID=NodeRedEditorClient
- NODERED_CLIENT_SECRET=NodeRedEditorSecret
- NODERED_AUTH_ADDITIONAL_SCOPES=lanes engine_read engine_write
# Dashboard-Authentifizierung
- NODERED_DASHBOARD_CLIENT_ID=NodeRedDashboardClient
- NODERED_DASHBOARD_CLIENT_SECRET=NodeRedDashboardSecret
- NODERED_DASHBOARD_AUTH_ADDITIONAL_SCOPES=lanes engine_read engine_write
# Storage-Konfiguration
- NODERED_FLOW_STORAGE_OUTPUT_FORMAT=yaml
- NODERED_FLOW_STORAGE_SAVE_BY_NODE=false
volumes:
- lowcode_data:/data
depends_on:
- engine
- authority
engine:
image: marketplace.processcube.io/processcube-io/processcube_engine:latest
ports:
- "8000:8000"
environment:
- iam__baseUrl=http://authority:11560
depends_on:
- authority
authority:
image: marketplace.processcube.io/processcube-io/processcube_authority:latest
ports:
- "11560:11560"
volumes:
lowcode_data:Nach dem Start:
- LowCode Editor:
http://localhost:1880 - Dashboard:
http://localhost:1880/dashboard - Engine API:
http://localhost:8000 - Authority:
http://localhost:11560
Wichtige Umgebungsvariablen
| Variable | Beschreibung | Standard |
|---|---|---|
NODERED_PORT | Port des LowCode-Servers | 1880 |
NODERED_NAME | Anzeigename im Editor-Header | – |
NODERED_AUTH_DISABLED | Authentifizierung deaktivieren | false |
NODERED_BASE_URL | Basis-URL der Anwendung | http://localhost:1880 |
ENGINE_URL | URL der Engine | – |
NODERED_AUTHORITY_URL | URL der Authority | – |
NODERED_CREDENTIAL_SECRET | Secret für Credential-Verschlüsselung | no-secret |
NODERED_THEME | Editor-Theme | processcube |
NODERED_FLOW_STORAGE_OUTPUT_FORMAT | Speicherformat der Flows (json/yaml) | json |
NODERED_FLOW_STORAGE_SAVE_BY_NODE | Flows pro Node speichern | true |
Die vollständige Liste aller Umgebungsvariablen finden Sie unter Konfiguration → Umgebungsvariablen.
Volumes
Das Volume lowcode_data persistiert alle Daten des LowCode-Containers:
/data/
├── flowStorageDir/ # Flow-Dateien (Storage Extension)
│ ├── flows/ # Flows in separaten Verzeichnissen
│ ├── subflows/ # Subflows
│ ├── configs/ # Config-Nodes
│ └── credentials.json
├── static/ # Statische Dateien (HTTP Static)
├── users.json # Benutzer-Berechtigungen
└── .config.*.json # Node-RED KonfigurationsdateienEmpfehlung: Für Entwicklung können Sie ein lokales Verzeichnis statt eines Docker-Volumes mounten:
volumes:
- ./lowcode-data:/dataSo haben Sie direkten Zugriff auf die Flow-Dateien und können diese mit Git versionieren.
Container-Verwaltung
# Container starten (im Hintergrund)
docker-compose up -d
# Logs anzeigen
docker-compose logs -f lowcode
# Container stoppen
docker-compose down
# Container stoppen und Volumes löschen
docker-compose down -v
# Container neu bauen (nach Image-Update)
docker-compose pull && docker-compose up -dAlternative: Start via npx
Für lokale Entwicklung ohne Docker können Sie LowCode direkt via npx starten:
npx @marketplace.processcube.io/processcube-io/processcube_lowcodeDie Anwendung startet auf http://localhost:1880 und erstellt automatisch das Benutzerverzeichnis unter ~/.processcube/lowcode.
# Mit benutzerdefiniertem Port
npx @marketplace.processcube.io/processcube-io/processcube_lowcode --port 3000
# Mit benutzerdefiniertem Verzeichnis
npx @marketplace.processcube.io/processcube-io/processcube_lowcode --userDir ./mein-projekt
# Mit Umgebungsvariablen
NODERED_AUTH_DISABLED=true npx @marketplace.processcube.io/processcube-io/processcube_lowcodeTroubleshooting
Port bereits belegt
Wenn Port 1880 bereits belegt ist, ändern Sie die Port-Zuweisung:
ports:
- "18880:1880"Der Editor ist dann unter http://localhost:18880 erreichbar.
Container startet nicht
Prüfen Sie die Logs:
docker-compose logs lowcodeHäufige Ursachen:
- Port-Konflikt: Anderer Container oder Prozess belegt den Port
- Volume-Berechtigungen: Das Data-Verzeichnis muss für den Container-User beschreibbar sein
- Netzwerk-Fehler: Engine oder Authority nicht erreichbar (bei Full-Stack-Setup)
Engine-Verbindung schlägt fehl
Stellen Sie sicher, dass:
- Die Engine erreichbar ist:
curl http://localhost:8000 - Die
ENGINE_URLden Docker-internen Hostnamen verwendet (z.B.http://engine:8000) - Engine und LowCode im selben Docker-Netzwerk sind (bei
docker-composeautomatisch)
Nächste Schritte
- Erstes Flow-Beispiel – Erstellen Sie Ihren ersten Flow
- Anbindung an ProcessCube® – Engine und Authority konfigurieren
- Konfiguration – Alle Umgebungsvariablen im Detail