Kategorien
Docker GO Lang Schnittstellen

Daten & Docker

Sie wollen gerne auf Daten zugreifen die in einem Docker Container gespeichert werden?

Das ist natürlich kein Problem! Man kann über das Volume-Mapping die Daten in einem Verzeichnis außerhalb des Docker Containers sichern. Dies hat natürlich einen großen Vorteil: wenn wir den Container austauschen, dann behalten wir unserer „wichtigen“ Daten.

Wir werden dieses Beispiel anhand eines Plesk Servers machen, aber Sie können dies natürlich auch auf jedem anderen System nutzen und natürlich auch über das Terminal.

Als erstes müssen Sie natürlich ein Docker Image installieren. In unserem Fall ist dies nun schon vorhanden. Es handelt sich in unserem Fall um eine Schnittstelle, welche eine .xlsx Datei von einem FTP Server ausließt und die enthaltenen Daten, in diesem Fall Kundendaten, in einem Online Shop anlegt. Die Anwendung ist in GO geschrieben läuft in einem erstellten Docker Container.

Wie stellen wir ein Volume-Mapping ein?

Wenn wir dieses auf unserem Plesk Server machen wollen, dann brauchen wir einmal den Pfad in unserem Image und den Pfad auf unserem Server. Dies wäre in diesem Beispiel wie folgt:

Hier sehen Sie das wir nun alle Daten und Ordner, welche in dem Verzeichnis „/go/src/app/logs“ in unserem Docker Container gespeichert werden, in dem neuen Verzeichnis, welches wir so gelegt haben, dass sie über den Pfad „/var/www/vhosts/test.de/logs“ erreichen kann.

Dieses vorgehen kann man natürlich auch auf das Terminal übertragen. Dabei sehen wir uns nun einmal an, wie es anhand von nginx durchführen kann. Auch hier werden die Logs in einem anderen Verzeichnis gesichert.

docker run --name=nginx -d -v ~/nginxlogs:/var/log/nginx -p 5000:80 nginx

Mit diesem Vorgehen kann man Daten zwischen Docker Containern teilen und diese beibehalten, wenn man ein Container getauscht werden sollte.

Wir hoffen dieser Beitrag konnte Ihnen weiterhelfen. Falls Sie Anmerkungen oder Fragen haben, dann kommentieren Sie diesen Beitrag gerne.

Von Jonas Kwiedor

Full- Stack Developer aus Hamburg. Liebt es sich mit Schnittstellen & Automationen auseinander zu setzen und sich mit der Programmiersprache GO Lang zu beschäftigen.