TOLERANT Software im Docker Container

Docker ist eine Open-Source-Softwareplattform, die Software in standardisierte Einheiten verpacken kann, so genannte Container. Sie enthalten alles, was zum Ausführen der Software erforderlich ist, einschließlich Bibliotheken, Systemtools, Code und Laufzeit. Diese virtualisierten Anwendungscontainer können Sie mit Docker nicht nur erstellen, sondern auch bereitstellen und verwalten.

Ursprünglich wurde Docker entwickelt, um die Verwaltung und Verteilung von Microservices wesentlich zu vereinfachen. Microservices selbst basieren auf einer sehr alten Idee der Software-Entwicklung:  der Modularisierung. Die Aufteilung von Software in Module erleichtert das Verständnis, weil nur jeweils ein Modul von einem Entwickler verstanden werden muss. Module helfen hierbei in der Entwicklung. Das Deployment der Anwendungen bringt alle Module gemeinsam in Produktion.

Genau an dieser Stelle unterscheiden sich Microservices von anderen Modularisierungsansätzen. Microservices sind Module, die unabhängig in Produktion gebracht werden können. Um dieses Ziel zu erreichen, sind Microservices beispielsweise eigene Prozesse, virtuelle Maschinen oder Docker Container als leichtgewichtige Alternativen zur Virtualisierung.

Die Datenqualitätsprodukte von TOLERANT Software eignen sich hervorragend für den Einsatz als Microservices. Besonders die Adressprüfung (TOLERANT Post), die Bankdatenprüfung (TOLERANT Bank) und die Namensvalidierung (TOLERANT Name) sind Produkte, die keine Daten im laufenden Betrieb persistieren müssen. Sie lassen sich daher besonders simpel als Dockercontainer bereitstellen. Auch TOLERANT Match, die fehlertolerante Suche und Dublettenerkennung, eignet sich gut für die Technologie der Docker Container. Eine besondere Herausforderung hierbei ist jedoch die Persistierung von Indexdaten.

Ein typisches Dockerfile (vereinfacht) für TOLERANT Match sieht zum Beispiel wie folgt aus:

TL Match Dockerfile

Das Image lässt sich auch als .tar-file speichern:
docker save <imagename(z.b. tolmatch:8.0)=““> -o </imagename(z.b.>

Hat man das Docker Image nicht gerade selber erstellt, so muss man es mit dem oben erstellten .tar-Archiv erst in das „Docker-Repository“ laden:
docker load -i

# starten mit gemounteten volumes (-v) und gemappten port. (Beispiel)
docker run –name tolmatch –user
p :
v :/opt/tmatch8/data
v :/opt/tmatch8/config
v :/opt/tmatch8/logs

Wie Sie an den Startparametern sehen können, muss man sich noch ein paar Gedanken über das Portmapping zwischen dem Container und dem Hostsystem machen. Dazu wird der Parameter
„-p“ im Aufruf verwendet.

TOLERANT Match selbst persistiert an verschiedenen Stellen Daten:

  • Anwendungsdaten (Verzeichnis /opt/tmatch8/data)
  • Konfigurationsdaten (Verzeichnis /opt/tmatch8/config)
  • Loginformationen während des Betriebes (Verzeichnis /opt/tmatch8/logs)

Wenn Sie verhindern wollen, dass die Daten nach einem Neustart des Containers verloren gehen, müssen Sie die Verzeichnisse auf einem Volume (oder einem Verzeichnis des Hostsystems) außerhalb des Containers speichern. Dazu verwenden Sie den Parameter „-v“.

Möchten Sie mehr erfahren? Dann freuen wir uns auf Ihre E-Mail an info@tolerant-software.de oder Ihren Anruf unter Tel. +49 711 400 4250.