Installation des HTML5 Gateway Docker¶
Import des Docker-Abbilds¶
Bevor Sie einen Container HTML5 Gateway Docker erstellen können, müssen Sie das Docker-Image importieren. Öffnen Sie dazu eine Shell, in der Ihnen die Docker-Befehle sowie die Datei cleanroom-html5-4.6.1-33-v2.tgz zur Verfügung stehen. Führen Sie in der Shell den folgenden Befehl aus und passen Sie den Pfad der TGZ-Datei an, wenn sie sich nicht im aktuellen Verzeichnis befindet:
1 | |
Prüfen Sie anschließend mit dem folgenden Befehl, ob der Import erfolgreich war:
1 | |
Die erwartete Ausgabe lautet wie folgt. Ist dies nicht der Fall, ist der Import fehlgeschlagen:
1 2 3 4 5 6 | |
Vollständige Ausgabe
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | |
Konfiguration des Containers¶
Umgebungsvariablen¶
Variablen für die Bereitstellung durch Pairing¶
| Name | Pflicht | Standardwert | Kommentar |
|---|---|---|---|
ENV_MEDIATION |
JA | Wird für die Verbindung durch Pairing verwendet. Gibt den DNS-Namen oder die IP-Adresse für die Verbindung mit der Weboberfläche einer Plattform CyberElements Bastion an. |
|
ENV_TOKEN |
JA | Wird für die Verbindung durch Pairing verwendet. Gibt das Pairing-Token an, das für die Verbindung mit dem Mediation Controller zu verwenden ist. |
|
ENV_NO_CHECK_CERT |
NEIN | false |
Wird für die Verbindungen durch Pairing verwendet. Deaktiviert die Prüfung des Webzertifikats des Mediation Controller oder nicht; nützlich bei CyberElements Bastion, wenn der Zugriff über die IP-Adresse erfolgt oder wenn das Webzertifikat kein von den öffentlichen Standardzertifizierungsstellen anerkanntes Zertifikat ist. Akzeptierte Werte: true oder false. |
Variablen für die manuelle Bereitstellung¶
| Name | Pflicht | Standardwert | Kommentar |
|---|---|---|---|
ENV_GW_CERT_NAME |
JA | Wird für die Verbindung mit manueller Konfiguration verwendet. Name der Zertifikatsdatei für die Verbindung mit dem SSL Router. |
|
ENV_GW_CERT_PASSWORD |
JA | Wird für die Verbindung mit manueller Konfiguration verwendet. Passwort der Zertifikatsdatei für die Verbindung mit dem SSL Router. |
|
ENV_SSL_ROUTER_IP |
JA | Wird für die Verbindung mit manueller Konfiguration verwendet. IP-Adresse oder DNS-Name des SSL Router, mit dem sich das HTML5 Gateway verbindet. |
|
ENV_SSL_ROUTER_PORT |
NEIN | 443 |
Wird für die Verbindung mit manueller Konfiguration verwendet. Port des SSL Router, mit dem sich das HTML5 Gateway verbindet. |
Verschiedene Variablen¶
| Name | Pflicht | Standardwert | Kommentar |
|---|---|---|---|
ENV_DISABLE_RSYSLOG |
NEIN | false |
Deaktivierung des Dienstes rsyslog.Zulässige Werte: true oder false. |
Volumes¶
| Volume | Kommentar |
|---|---|
/etc/ipdiva/ |
Konfigurationsvolume des HTML5 Gateway. Wir empfehlen, es in ein benanntes Volume oder in das Dateisystem der Hostmaschine einzubinden. |
/opt/certificates/ |
Volume, das das oder die Zertifikate des HTML5 Gateway bei einer Konfiguration ohne Pairing enthält. |
/var/log/ |
Volume, das die Protokolle des HTML5 Gateway enthält. |
Ports¶
| Port | Kommentar |
|---|---|
8080 |
Lauschport des HTML5-Dienstes. |
Bereitstellung des HTML5 Gateway Docker¶
Bereitstellung mit Pairing¶
Voraussetzungen
Bevor Sie das HTML5 Gateway Docker bereitstellen, müssen Sie ein Pairing-Token abrufen.
Die nachstehend beschriebene Bereitstellung verwendet alle verfügbaren Volumes (außer /opt/certificates/, das in diesem Zusammenhang nicht von Nutzen ist) und macht alle Ports verfügbar.
Die Volumes werden am Ort HTML5_GATEWAY_REP in das Dateisystem der Hostmaschine eingebunden. Innerhalb dieses Ortes befinden sich die folgenden Unterverzeichnisse:
- config
- log
Sie können die Variablen der folgenden Befehle anpassen:
| Angepasster Wert | Variable | Kommentar |
|---|---|---|
DOCKER_NAME |
Name des Docker-Containers. | |
HTML5_GATEWAY_REP |
Ort im Dateisystem, an dem die Volumes eingebunden werden. | |
ENV_MEDIATION_VALUE |
Wert der Umgebungsvariablen ENV_MEDIATION. |
|
ENV_TOKEN_VALUE |
Wert der Umgebungsvariablen ENV_TOKEN. |
|
ENV_NO_CHECK_CERT_VALUE |
Wert der Umgebungsvariablen ENV_NO_CHECK_CERT. |
Legen Sie die für das Einhängen der Volumes erforderliche Verzeichnisstruktur im Dateisystem an:
1 2 | |
Und starten Sie zuletzt einen neuen Container:
1 2 3 4 5 6 7 8 | |
Die Protokolle des Containers lassen sich mit dem folgenden Befehl einsehen:
1 | |
Manuelle Bereitstellung¶
Voraussetzungen
Bevor Sie das HTML5 Gateway Docker bereitstellen, müssen Sie über das für das HTML5 Gateway erforderliche Zertifikat verfügen.
Die nachstehend beschriebene Bereitstellung verwendet alle verfügbaren Volumes und macht alle Ports verfügbar.
Die Volumes werden im Dateisystem der Hostmaschine am Ort MANUAL_REP eingehängt. Innerhalb dieses Ortes befinden sich die folgenden Unterverzeichnisse:
- config
- log
- certificates
Sie können die Variablen der folgenden Befehle anpassen:
| Angepasster Wert | Variable | Kommentar |
|---|---|---|
MANUAL_NAME |
Name des Docker-Containers. | |
MANUAL_REP |
Ort im Dateisystem, an dem die Volumes eingehängt werden. | |
ENV_GW_CERT_NAME_VALUE |
Wert der Umgebungsvariablen ENV_GW_CERT_NAME. |
|
ENV_GW_CERT_PASSWORD_VALUE |
Wert der Umgebungsvariablen ENV_GW_CERT_PASSWORD. |
|
ENV_SSL_ROUTER_IP_VALUE |
Wert der Umgebungsvariablen ENV_SSL_ROUTER_IP. |
|
ENV_SSL_ROUTER_PORT_VALUE |
Wert der Umgebungsvariablen ENV_SSL_ROUTER_PORT. |
Legen Sie die für das Einhängen der Volumes erforderliche Verzeichnisstruktur im Dateisystem an:
1 2 3 | |
Legen Sie anschließend die Zertifikate des HTML5 Gateway und des Aufzeichnungsdienstes in MANUAL_REP/certificates ab.
Starten Sie zuletzt einen neuen Container:
1 2 3 4 5 6 7 8 9 10 | |
Die Protokolle des Containers lassen sich mit dem folgenden Befehl einsehen:
1 | |
Konfiguration des Mediation Controller¶
Damit das neue HTML5 Gateway Docker betriebsbereit ist, muss noch der Mediation-Controller-Server über einen SSH- oder Konsolenzugriff mit root-Berechtigungen konfiguriert werden.
Diese letzte Konfiguration ist erforderlich, damit der Mediation Controller mit dem HTML5-Dienst kommunizieren kann.
Diese Konfiguration hängt jedoch vom Standort des HTML5 Gateway Docker ab:
Das Gesamtschema sieht wie folgt aus:
flowchart LR
subgraph DMZ
direction TB
HTML5(HTML5 Gateway Docker)
MED(Mediation Controller)
end
subgraph LAN
GW(Edge Gateway)
end
MED -.-> |Verbindung zum HTML5-Dienst ; TCP 8080| HTML5
HTML5 --> |TLS Tunnel| MED
MED ~~~ GW
GW --> |TLS Tunnel| MED
GW ~~~ MED
linkStyle 0 stroke:#d22,color;
In diesem Zusammenhang müssen die nachstehend angegebenen Informationen zur Datei /etc/ipdiva/httpd/commonParameters.extra.conf hinzugefügt oder diese Datei erstellt werden.
Die Parameter können angepasst werden:
| Angepasster Wert | Variable | Kommentar |
|---|---|---|
HTML5_URL_DMZ |
URL, die bei der Deklaration des HTML5 Gateway in der Administrationskonsole konfiguriert wurde. | |
HTML5_IP_DMZ |
DNS-Name oder IP-Adresse des Docker-Servers, auf dem das HTML5 Gateway Docker aktiv ist. | |
HTML5_PORT_DMZ |
Port, den der Docker-Server für das HTML5 Gateway Docker veröffentlicht. |
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Das Gesamtschema sieht wie folgt aus:
flowchart LR
subgraph DMZ
direction TB
MED(Mediation Controller)
end
subgraph LAN
HTML5(HTML5 Gateway Docker)
GW(Edge Gateway)
end
MED -.- | Verbindung zum HTML5-Dienst ; über TLS-Tunnel| GW -.-> |Verbindung zum HTML5-Dienst ; TCP 8080| HTML5
HTML5 --> |TLS Tunnel| MED
GW --> |TLS Tunnel| MED
linkStyle 0,1 stroke:#d22,color;
In diesem Zusammenhang müssen die nachstehend angegebenen Informationen zur Datei /etc/ipdiva/httpd/commonParameters.extra.conf hinzugefügt oder diese Datei erstellt werden.
Die Parameter können angepasst werden:
| Angepasster Wert | Variable | Kommentar |
|---|---|---|
HTML5_URL_LAN |
URL, die bei der Deklaration des HTML5 Gateway in der Administrationskonsole konfiguriert wurde. | |
GW_NAME_LAN |
Name des Edge Gateway, das für die Verbindung mit dem HTML5-Dienst verwendet wird. Das Zeichen der vertikalen Linie am Ende der Zeile muss erhalten bleiben. | |
ORGANIZATION_NAME_LAN |
Name der Organisation, mit der sich das Edge Gateway verbindet. | |
HTML5_IP_LAN |
DNS-Name oder IP-Adresse des Docker-Servers, auf dem das HTML5 Gateway Docker aktiv ist. | |
HTML5_PORT_LAN |
Port, den der Docker-Server für das HTML5 Gateway Docker veröffentlicht. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Tipp
Diese Konfiguration kann auch in der folgenden Situation verwendet werden, in der ein Edge Gateway Docker und ein HTML5 Gateway Docker im selben Docker-Netzwerk laufen:
flowchart LR
subgraph DMZ
direction TB
MED(Mediation Controller)
end
subgraph LAN
subgraph docker[Docker Server]
HTML5([HTML5 Gateway Docker])
GW([Edge Gateway])
end
end
MED -.- | Verbindung zum HTML5-Dienst ; über TLS-Tunnel| GW -.-> |Verbindung zum HTML5-Dienst ; TCP 8080 über das Docker-Netzwerk| HTML5
HTML5 --> |TLS Tunnel| MED
GW --> |TLS Tunnel| MED
linkStyle 0,1 stroke:#d22,color;
Beispiel
In diesem Beispiel stellen wir ein Edge Gateway und ein HTML5 Gateway auf demselben Docker-Server bereit.
Die für das Beispiel verwendete Infrastruktur sieht wie folgt aus:
- Mediation-Controller-Server
- Web-IP-Adresse:
10.0.10.10 - Name der Organisation:
my-organization-name - Token für das Edge Gateway:
YJ5N-JN05-N5LS-N26H-7JHA-HZ9R-BGJF-MAVH - Token für das HTML5 Gateway:
ATCW-OMVR-0RY4-LW1M-D9G9-H5VF-WPX5-YCXF - URL für den Zugriff auf den HTML5-Dienst:
HTML5_DOCKER
- Web-IP-Adresse:
- Docker-Server
- Name des Docker-Netzwerks:
cyberelements-cleanroom-network - Edge Gateway
- Name:
my-edge-gateway-docker - Wurzelort im Dateisystem:
/opt/my-edge-gateway-docker
- Name:
- HTML5 Gateway
- Name:
my-html5-gateway-docker - Wurzelort im Dateisystem:
/opt/my-html5-gateway-docker
- Name:
- Name des Docker-Netzwerks:
Zunächst müssen Sie auf dem Docker-Server die Verzeichnisstruktur für das Einbinden der Docker-Volumes erstellen:
1 2 3 4 5 6 | |
Erstellen Sie anschließend ein Docker-Netzwerk vom Typ bridge, damit die beiden Container miteinander kommunizieren können:
1 | |
Starten Sie anschließend den Container des Edge Gateway. Beachten Sie, dass im Beispiel eine Verbindung durch Pairing aufgebaut wird, mit Zugriff auf den Mediation Controller über seine IP-Adresse und ohne Zertifikatsprüfung. Außerdem wird der Parameter --network hinzugefügt, um die Verwendung des zuvor erstellten Docker-Netzwerks anzugeben:
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Starten Sie anschließend den Container des HTML5 Gateway. Beachten Sie, dass im Beispiel eine Verbindung durch Pairing aufgebaut wird, mit Zugriff auf den Mediation Controller über seine IP-Adresse und ohne Zertifikatsprüfung. Außerdem wird der Parameter --network hinzugefügt, um die Verwendung des zuvor erstellten Docker-Netzwerks anzugeben; und da der Zugriff auf den HTML5-Dienst über das Docker-Netzwerk erfolgt, ist die Veröffentlichung des Ports 8080 nicht erforderlich:
1 2 3 4 5 6 7 8 | |
Schließlich muss die Datei /etc/ipdiva/httpd/commonParameters.extra.conf des oder der Mediation-Controller-Server konfiguriert werden. Der folgende Abschnitt ist hinzuzufügen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | |
Bevor Sie die neue Konfiguration anwenden, müssen Sie prüfen, dass sie keinen blockierenden Fehler des Webservers Apache2 verursacht.
Führen Sie dazu den folgenden Befehl aus:
1 | |
Lautet die Antwort Syntax OK, können die Änderungen mit dem folgenden Befehl angewendet werden. Andernfalls überprüfen Sie die Konfiguration Ihrer Datei /etc/ipdiva/httpd/commonParameters.extra.conf.
1 | |