Konfiguration des Docker-Containers
Wie bei Docker-Compose üblich wird der Container mit Hilfe einer speziellen Konfigurationsdatei (docker-compose.yml) spezifiziert.
Neben den Dateien des Docker-Containers sind zudem noch weitere Daten, bspw. in Form von Trainingsdaten für die Texterkennung, zu erwarten.
Um die Organisation der Dateien auf dem Server übersichtlich zu halten, empfiehlt es sich grundsätzlich für jeden (Server-)Dienst ein separates Verzeichnis zu nutzen.
In diesem Beispiel wird daher zunächst mit dem Befehl mkdir /srv/stirling
ein neues Verzeichnis für Stirling-PDF erstellt und mittels cd /srv/stirling/
dorthin gewechselt.
Dort wird dann mit Hilfe eines Text-Editors die Konfigurationsdatei angelegt. Bei der Verwendung von nano lautet der Befehl somit nano docker-compose.yml
:
Die Konfigurationsdatei wird mit Daten nach diesem Schema erstellt:
version: '3.3'
services:
stirling-pdf:
image: frooodle/s-pdf:latest
ports:
- '8080:8080'
volumes:
- /srv/stirling/trainingData:/usr/share/tesseract-ocr/4.00/tessdata #Required for extra OCR languages
- /srv/stirling/extraConfigs:/configs
- /srv/stirling/customFiles:/customFiles/
environment:
- DOCKER_ENABLE_SECURITY=false
restart: always
Unter ports wird definiert, über welchen Port (links anzugeben) die Anwendung, die im Container unter dem rechts angegebenen Port läuft, später von außen zu erreichen ist. Der Eintrag :8080 darf nicht verändert werden.
Soll Stirling-PDF später unter dem üblichen HTTP-Port 80 erreichbar sein, müsste der Eintrag auf '80:8080' geändert werden.
Bei volumes muss der Pfad angepasst werden, wenn nicht wie in diesem Beispiel /srv/stirling verwendet wird.
Mit der Tastenkombination STRG
und X
kann der Editor nano verlassen und die Datei nach Rückfrage gespeichert werden:
Die Definition des Docker-Containers ist damit abgeschlossen.