Voraussetzungen
Sie benötigen einen laufenden Linux Server mit installiertem Docker (Sizing). Um Docker zu installieren, folgen Sie bitte der offiziellen Dokumentation Ihrer Distribution, z. B.:
-
- Ubuntu: https://docs.docker.com/engine/install/ubuntu/
- Red Hat Enterprise Linux: https://docs.docker.com/engine/install/rhel/
- Das Docker Compose-Plugin ist installiert
- Docker-Version mindestens 20.10.17
- Gültiges TLS-Zertifikat (einschließlich Chain) für HTTPS
Schritt 1 – Docker Compose-Plugin installieren (optional)
Wenn Sie den folgenden Befehl nicht ausführen können
docker compose
Ihre Installation ist zu alt oder das Compose-Plugin fehlt. Die offizielle Dokumentation zur Installation von Docker einschließlich des Compose-Plugins ist https://docs.docker.com/engine/install/ Sie können auch Ihre distributionsspezifischen Repositories überprüfen. Für Ubuntu ist docker compose Teil des Docker-Repositorys, das in den meisten Fällen standardmäßig aktiviert ist. Sie können es installieren mit:
apt install docker-compose-plugin
Wenn Ihre Distribution kein Paket bereitstellt, können Sie die Docker-Engine per Skript herunterladen.
Schritt 2 – Vorbereiten des Hostsystems
Erstellen Sie die Ordner, die für die dauerhafte Speicherung erforderlich sind:
mkdir -p /var/lib/simplifier/mysql mkdir -p /var/lib/simplifier/simplifier mkdir -p /var/lib/simplifier/traefik mkdir -p /var/lib/simplifier/bin mkdir -p /var/lib/simplifier/launchpad mkdir -p /var/lib/simplifier/workflowRuntime mkdir -p /var/lib/simplifier/workflowDesigntime mkdir -p /var/lib/simplifier/shared chown 1000:1000 /var/lib/simplifier/workflowDesigntime
Anmerkung: Dies sind die wichtigen Ordner, die Sie in Ihr Backup aufnehmen sollten.
Schritt 3 – Holen Sie sich die Simplifier-Setup-Dateien
Zuerst müssen Sie git installieren
apt install git
Klonen des Setup-Repositorys
cd /var/lib/simplifier/bin git clone --branch release/LTS https://github.com/simplifier-ag/docker-compose.git
Wechseln Sie in das neue Verzeichnis und überprüfen Sie dessen Inhalt
cd docker-compose ls -a
Sie sollten mindestens die folgenden Einträge sehen:
- .env.template
- security.toml.template
- docker-compose.yml
- MySQL-Ordner
.env.template definiert die Umgebung in Form von Variablenwerten. Diese Datei muss als .env kopiert und geändert werden.
cp .env.template .env
security.toml.template definiert Sicherheitseinstellungen, insbesondere TLS-Zertifikate. Es ist optional, aber in den meisten Fällen möchten Sie es verwenden. Kopieren Sie dazu die Datei security.toml und ändern Sie diese Kopie wie weiter unten beschrieben.
cp security.toml.template security.toml
docker-compose.yml handelt es sich um die docker-compose-Datei, die die notwendigen Dienste definiert. Es definiert die folgenden 8 Dienste:
- mysql: Datenbank-Backend für Simplifier
- Traefik: Reverse-Proxy-Server
- Vereinfacher: Anwendungsserver
- Launchpad: Simplifier-Launchpad
- workflow-runtime: Laufzeitmodul für die Workflow-Engine
- workflow-designtime: Designtime-Modul für die Workflow-Engine
- Wachtturm: Automatisierte Updates
- mysqlinit: Anfängliche Datenbankkonfiguration.
In den meisten Fällen können Sie diese Datei unverändert lassen.
Schritt 4: Vorbereiten der Umgebung
Bearbeiten der Umgebungsdatei
nano .env
Es definiert Variablen, mit denen Sie Ihre Simplifier-Installation anpassen können.
Es ist zwingend erforderlich, dass Sie die ersten 3 Einträge an Ihre Bedürfnisse anpassen:
# these 3 variables need to be changed SIMPLIFIER_HOSTNAME=example.simplifier.cloud DB_PASSWORD=MySecret123 DB_ROOT_PASSWORD=MySuperSecret
Ändern Sie den Wert von SIMPLIFIER_HOSTNAME in den Hostnamen des Servers (ohne https://). Legen Sie DB_PASSWORD und DB_ROOT_PASSWORD auf zwei verschiedene Werte fest, die Ihren internen Passwortrichtlinien entsprechen. Die anderen Variablen verfügen über Standardwerte, die Ihnen eine ausgeführte Simplifier-Instanz zur Verfügung stellen. Sie können sie bei Bedarf ändern. Jetzt können Sie die .env-Datei speichern und schließen.
Optional: eine Liste aller env-Variablen mit einer kurzen Beschreibung:
SIMPLIFIER_HOSTNAME
|
Simplifier Hostname, FQDN, ohne Protokoll. Um auf Simplifer zugreifen zu können, muss https://${SIMPLIFIER_HOSTNAME} verwendet werden |
DB_PASSWORD
|
Passwort für die MySQL-Datenbank |
DB_ROOT_PASSWORD
|
Passwort für den MySQL-Root-Benutzer |
DB_NAME
|
Datenbankname für die Simplifier-Datenbank. Wird als Präfix für alle Plugin-/Moduldatenbanken verwendet. |
SIMPLIFIER_VERSION
|
Version von Simplifier, die Sie installieren möchten. Daran sollten Sie nichts ändern. Wenn Sie eine andere Simplifier-Version haben möchten, schauen Sie sich bitte stattdessen den entsprechenden Zweig an |
HOST_DATA_PATH
|
Pfad, in dem alle Daten auf dem Host gespeichert sind. |
PLUGIN-LISTE
|
Liste aller Plugins, die gestartet werden sollen. Technisch gesehen handelt es sich bei der Workflow Engine nicht um ein Plugin, daher wird sie hier nicht erwähnt |
SIMPLIFIER_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Simplier App Server in GB |
TZ
|
Zeitzone. Wird nur im Workflow-Kontext verwendet |
WF_RT_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Workflow Runtime in GB |
WF_ARCHIVE_ENABLED
|
Informationen zu archivbezogenen Einstellungen finden Sie in dieser Dokumentation. |
WF_ARCHIVE_INTERVAL
|
|
WF_ARCHIVE_MAX_AGE_COMPLETED
|
|
WF_ARCHIVE_TIME
|
|
WF_DT_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Workflow Designtime in GB |
LAUNCHPAD_JVM_HEAP_GB
|
Wie viel Heap-Speicherplatz für Launchpad in GB |
FEATURE_SSBO_JS_DEBUGGING
|
Soll das experimentelle Feature “Debuggen von serverseitigen Business Objekten” aktiviert werden? (Weiterlesen) |
DEBUG_CHROME_DEV_TOOLS_EXPOSED_PORT
|
Port, der zum Herstellen einer Verbindung mit dem Debugger verwendet wird. Dieser Port muss in Ihrem Firewall-Setup geöffnet sein. (Weiterlesen) |
PDFPLUGIN_SECURITY_ALLOW_JAVASCRIPT
|
Sollte die Ausführung von Javascript in PDF-Vorlagen erlaubt sein? (Weiterlesen) |
DYNAMIC_TAB_TITLES_ENABLED
|
Sollen die dynamischen Tab-Icons und Tab-Titel aktiviert werden? (Weiterlesen) |
Schritt 5 – Einrichten von TLS (allgemein als SSL bezeichnet)
Die angegebene Docker-Compose-Datei konfiguriert den Traefik-Proxy so, dass er nur HTTPS verwendet. Ohne weitere Änderungen wird ein selbstsigniertes Standardzertifikat verwendet, das in allen gängigen Browsern Warnungen auslöst. Um dies zu vermeiden, müssen Sie Ihre eigenen Zertifikate bereitstellen. Sie benötigen sowohl den privaten Schlüssel als auch den öffentlichen Schlüssel. In der Regel kommen sie in Form eines Paares von .crt- und .key-Dateien.
Bearbeiten Sie die Datei security.toml.
nano security.toml
In den ersten beiden Abschnitten werden die Zertifikate und der Zertifikatspeicher behandelt:
[[tls.certificates]] certFile = "/configuration/my.custom.hostname.crt" keyFile = "/configuration/my.custom.hostname.key" [tls.stores] [tls.stores.default] [tls.stores.default.defaultCertificate] certFile = "/configuration/my.custom.hostname.crt" keyFile = "/configuration/my.custom.hostname.key"
Ersetzen Sie “my.custom.hostname.crt” und “my.custom.hostname.key” durch die Dateinamen Ihrer Zertifikats- und Schlüsseldateien. WICHTIG: Lassen Sie den Pfad /configuration/ unverändert. Dies ist der Pfad innerhalb des Containers, nicht auf dem Hostsystem. Sie wird in der traefik-Service-Definition der docker-Compose-Datei in der Sektion volumes definiert. Platzieren Sie alle drei Dateien in /var/lib/simplifier/traefik.
cp myKeyFile.key myCertFile.crt /var/lib/simplifier/traefik cp security.toml /var/lib/simplifier/traefik
Schritt 6 – OPTIONAL Konfigurieren von Cipher Suites und TLS-Versionen
Die Sicherheit von Cyper ist ein sich wandelndes Feld. Algorithmen, die als sicher galten, können kompromittiert werden. Manchmal hat die Unterstützung älterer Software-Clients eine höhere Priorität als die Sicherheitseinstellungen nach dem Stand der Technik. Aus diesem Grund werden in der Regel ältere Algorithmen und Protokolle unterstützt, die jedoch über die Konfiguration deaktiviert werden können. Die vorbereitete Beispieldatei deaktiviert einige ältere Protokolle und Algorithmen. Es werden nur solche zugelassen, die zum Zeitpunkt der Erstellung dieses Artikels als sicher galten. Diese Konfiguration erfolgt mit diesem Teil der Datei security.toml:
[tls.options] # Valid constants: https://pkg.go.dev/crypto/tls#pkg-constants [tls.options.default] minVersion = "VersionTLS12" cipherSuites = [ "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305", "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305", "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256", "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256", ] [tls.options.mintls12] minVersion = "VersionTLS12"
Wenn Sie Probleme haben, sich mit älteren Browsern (die Sie nicht verwenden sollten) oder anderen (proprietären) Clients zu verbinden, versuchen Sie, diesen Teil der Konfiguration zu entfernen. Anstatt diese Zeilen zu löschen, können Sie ein # an den Anfang jeder Zeile setzen, um sie als Kommentar zu markieren.
Schritt 7 – Starten des Simplifiers
Bisher ist alles vorbereitet und Simplifier kann gestartet werden. Wechseln Sie zurück in den Ordner, in dem Sie die docker-compose.yml Datei gespeichert haben. Um alle Dienste zu starten, die in der Datei ausgeführt werden, gehen Sie wie folgt vor:
docker compose up -d
Öffnen Sie nun von Ihrem Desktop-Computer aus einen neuen Browser-Tab und navigieren Sie zum Server. Sie sollten eine einfache Website sehen, auf der Sie aufgefordert werden, eine Simplifer-Lizenz einzufügen. Kopieren Sie den gesamten Inhalt der Lizenzdatei, die Sie vom Simplifier Customer Success Team erhalten haben, und fügen Sie ihn in das Webformular ein. Drücken Sie Speichern. Der Browser leitet Sie nun auf die Simplifier-Anmeldeseite weiter. Melden Sie sich mit den Standardanmeldeinformationen admin/admin an.
Schritt 8 – Grundlegende Einrichtung des Simplifiers
Einige grundlegende Einrichtungsschritte müssen in der Simplifier-Benutzeroberfläche ausgeführt werden.
Benutzerverwaltung
Ändern Sie das Passwort des Administrators und des Gastbenutzers (Dokumentation).
Standard-Inhalte
No Downloads foundLaden Sie den aktuellen Standardinhalt herunter und importieren Sie ihn (Dokumentation).
Lernen
Starten Sie hier den Basiskurs und erstellen Sie Ihre erste App.