Skip to main content
Skip table of contents

Installation als Docker Container

signoSign/Universal kann auch in einem Docker-Container genutzt werden. Da die Anwendung derzeit viele Abhängigkeiten zum zugrundeliegenden Server (z. B. Benutzerverwaltung, TLS-Einstellungen, etc.) hat, stellt signotec derzeit kein “fertiges” Docker-Image zur Verfügung. Ein solches Docker-Image können Sie jedoch in wenigen Schritten selbst erstellen. Die folgenden Abschnitte erklären beispielhaft, wie Sie signoSign/Universal auf einem Docker-Image mit einem Tomcat installieren können.

Benötigte Ressourcen

Um signoSign/Universal in einem Docker-Container betreiben zu können benötigen Sie folgende Ressourcen:

  • Ein System mit installiertem Docker (Docker Host)

  • signoSignUniversal.war

  • tomcat-users.xml mit Benutzern und Rollen für signoSign/Universal

Benutzer konfigurieren

Bevor Sie mit dem Image loslegen können, benötigen Sie eine “tomcat-users.xml” mit Benutzern und Rollen für die Verwendung von signoSign/Universal.

Der Inhalt könnte beispielsweise wie folgt aussehen:

XML
<?xml version="1.0" encoding="UTF-8"?>
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">
<role rolename="ssu-user"/>
<role rolename="ssu-admin"/>
<user username="user" password="password" roles="ssu-user"/>
<user username="admin" password="admin" roles="ssu-admin"/>
</tomcat-users>

Diese Konfiguration enthält einen Benutzer “user” mit dem Passwort “password” sowie einen Administrator “admin” mit dem Passwort “admin”.

Alternativ zur Konfiguration über die “tomcat-users.xml” können Sie auch eine eigene Benutzerdatenbank anbinden oder Single-Sign-On konfigurieren. Die hier verwendete Benutzerkonfiguration dient rein beispielhaft.

Image erstellen

Zum Betrieb in einem Docker-Container benötigen Sie ein Docker-Image.

Vorbereitung

Erstellen Sie zunächst einen neuen Ordner und kopieren Sie die erstellte “tomcat-users.xml” sowie die “signoSignUniversal.war” aus dem Downloadpaket in diesen Ordner.

Dockerfile erstellen

Erstellen Sie ein Dockerfile mit folgendem Inhalt:

CODE
FROM tomcat:9.0
COPY tomcat-users.xml /usr/local/tomcat/conf/
COPY signoSignUniversal.war /usr/local/tomcat/webapps/

In diesem Beispiel wird als Ausgangspunkt ein Tomcat 9.0 Image aus dem Docker Hub verwendet sowie die “tomcat-users.xml” und die “signoSignUniversal.war” aus dem Ordner in das Image kopiert.

Image bauen

Wenn Sie die Dateien vorbereitet haben, können Sie das Image erstellen. Hierzu öffnen Sie eine Konsole (cmd oder Powershell) und navigieren in den erstellten Projektordner. Führen Sie dort folgenden Befehl aus, um das Image mit dem Namen “signoSignUniversal” zu bauen.

POWERSHELL
docker build -t signoSignUniversal .

Image ausführen

Das soeben erstellte Image können Sie nun als Container ausführen.

POWERSHELL
docker run -d -p 80:8080 signoSignUniversal

Der Befehl startet einen Container mit dem erstellten Image und mappt den Port 80 auf 8080.

Datenbank als Volume nutzen

Insofern Sie die H2-Datenbank längerfristig nutzen möchten, können Sie den Ordner mit der Datenbank in ein Volume auslagern. Hierzu starten Sie den Container z. B. mit folgendem Befehl:

POWERSHELL
docker run -d -p 80:8080 -v h2db:/usr/local/tomcat/SSU_DB signoSignUniversal

Anwendung aufrufen

Nachdem der Container hochgefahren ist, können Sie die Anwendung über folgende URL aufrufen:

http://<DOMAIN>/signoSignUniversal/pool/

Wenn Sie Docker lokal nutzen, so wäre dies z. B.:

http://localhost/signoSignUniversal/pool/

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.