Konfiguration
LowCode bietet zwei zentrale Ansätze zur Konfiguration: Umgebungsvariablen und die settings.js-Datei. Beide Mechanismen ergänzen sich und ermöglichen eine flexible Anpassung der LowCode-Umgebung an unterschiedliche Einsatzszenarien.
Konfigurationsansätze im Überblick
Umgebungsvariablen
Umgebungsvariablen sind der empfohlene Weg für die Konfiguration in containerisierten Umgebungen (Docker, Kubernetes). Sie werden beim Start der Anwendung ausgelesen und steuern alle wesentlichen Aspekte wie Port, Authentifizierung, Engine-Anbindung und Storage-Verhalten.
Alle LowCode-spezifischen Umgebungsvariablen beginnen mit dem Prefix NODERED_.
Vollständige Referenz: Umgebungsvariablen
settings.js
Die settings.js ist die klassische Node-RED-Konfigurationsdatei. Sie bietet erweiterte Einstellungsmöglichkeiten, die über Umgebungsvariablen hinausgehen, etwa für das Editor-Theme, Logging-Konfiguration, Context Storage oder Node-spezifische Parameter.
Zusätzlich kann über die Umgebungsvariable NODERED_CUSTOM_SETTINGS eine eigene Konfigurationsdatei eingebunden werden, die per lodash.merge in die bestehende Konfiguration integriert wird.
Vollständige Referenz: settings.js Referenz
Schnellreferenz: Wichtigste Umgebungsvariablen
Die folgende Tabelle zeigt die am häufigsten verwendeten Umgebungsvariablen:
| Variable | Beschreibung | Standard |
|---|---|---|
NODERED_PORT | Port, auf dem LowCode erreichbar ist | 1880 |
NODERED_AUTH_DISABLED | Deaktiviert die gesamte Authentifizierung | false |
NODERED_BASE_URL | Basis-URL der LowCode-Instanz | http://localhost:1880 |
ENGINE_URL | URL der Engine | - |
NODERED_AUTHORITY_URL | URL des Authority-Servers (OpenID Connect) | - |
NODERED_CLIENT_ID | Client-ID fuer die Editor-Authentifizierung | - |
NODERED_CLIENT_SECRET | Client-Secret fuer die Editor-Authentifizierung | - |
NODERED_DASHBOARD_CLIENT_ID | Client-ID fuer die Dashboard-Authentifizierung | - |
NODERED_DASHBOARD_CLIENT_SECRET | Client-Secret fuer die Dashboard-Authentifizierung | - |
NODERED_CREDENTIAL_SECRET | Schluessel zur Verschluesselung von Credentials | no-secret |
NODERED_THEME | Editor-Theme | processcube |
NODERED_FLOW_STORAGE_OUTPUT_FORMAT | Speicherformat fuer Flows | json |
NODERED_FLOW_STORAGE_SAVE_BY_NODE | Flows pro Node oder pro Tab speichern | true |
NODERED_CUSTOM_SETTINGS | Pfad zu einer zusaetzlichen Konfigurationsdatei | - |
NODERED_HTTP_STATIC | Verzeichnis fuer statische Dateien | - |
NODERED_NAME | Name der LowCode-Instanz (wird im Editor angezeigt) | - |
Beispiel: Docker Compose Konfiguration
Eine typische Konfiguration fuer eine Produktionsumgebung mit Docker Compose:
services:
lowcode:
image: marketplace.processcube.io/processcube-io/processcube_lowcode:latest
ports:
- "1880:1880"
environment:
# Basis-Konfiguration
NODERED_PORT: 1880
NODERED_NAME: "Produktion"
NODERED_BASE_URL: "https://lowcode.meine-firma.de"
# Engine-Anbindung
ENGINE_URL: "http://engine:8000"
# Authentifizierung
NODERED_AUTHORITY_URL: "http://authority:11560"
NODERED_CLIENT_ID: "NodeRedEditorClient"
NODERED_CLIENT_SECRET: "NodeRedEditorSecret"
NODERED_DASHBOARD_CLIENT_ID: "NodeRedDashboardClient"
NODERED_DASHBOARD_CLIENT_SECRET: "NodeRedDashboardSecret"
# Sicherheit
NODERED_CREDENTIAL_SECRET: "mein-sicherer-schluessel"
# Storage
NODERED_FLOW_STORAGE_OUTPUT_FORMAT: yaml
NODERED_FLOW_STORAGE_SAVE_BY_NODE: false
volumes:
- lowcode-data:/data
volumes:
lowcode-data:Reihenfolge der Konfigurationsauswertung
Die Konfiguration wird in folgender Reihenfolge ausgewertet:
- settings.js wird als Basis geladen
- Umgebungsvariablen ueberschreiben einzelne Werte aus der settings.js
- NODERED_CUSTOM_SETTINGS wird per
lodash.mergein die Konfiguration integriert
Dadurch hat die Custom-Settings-Datei die hoechste Prioritaet und kann alle vorherigen Einstellungen ueberschreiben.
Weiterführende Dokumentation
- Umgebungsvariablen — Vollstaendige Referenz aller NODERED_* Parameter
- settings.js Referenz — Erweiterte Konfiguration, Editor-Theme, Logging und mehr