Erzeugt ein Docker Image das eine Webanwendung zur Bereinigung von MARC-Dateien zur Verfügung stellt.
- Benötigt das Repository catmandu-marc (Benutzer ublast), das ein Docker Image mit allen benötigten perl Modulen für Catmandu und Catmandu::MARC paketiert.
- Beinhaltet als Untermodul das von georgd geforkte Modul ebooks, welches ein Perlskript zum bequemen Aufruf von Catmandu und von ihm gewartete Korrekturregeln enthält.
- Die Umwandlung wird über ein einfaches Webinterface vorgenommen.
- Ein Webserver kann dem Dockercontainer vorgeschaltet werden, der dieses Service nach außen weiterreichen kann.
-
Zuerst das Docker Image catmandu-marc lokal bauen:
- In das Verzeichnis des Repositories catmandu-marc wechseln:
cd catmandu-marc
- Ausführen:
docker build -f ./Dockerfile -t catmandu-marc .
- In das Verzeichnis des Repositories catmandu-marc wechseln:
-
Das Docker Image ebooks-fix bauen:
- In das Verzeichnis des Repositories ebooks-fix wechseln:
cd ebooks-fix
- Aktuellen Stand des eingebundenen Submodules ebooks holen:
git submodule update --init --recursive --remote
- Ausführen:
docker build -f ./Dockerfile -t ebooks-fix .
- In das Verzeichnis des Repositories ebooks-fix wechseln:
-
Starten des Containers:
docker run -p 8080:80 --name ebooks-fix --rm ebooks-fix &
-
Beenden des Containers:
docker stop ebooks-fix
-
Anmerkung: Durch
-p 8080:80
wird der im Dockercontainer verwendete Port80
nach außen auf Port8080
gemappt.
- Starten des Containers:
docker run -p 8080:80 --name ebooks-fix --entrypoint "" -it --rm ebooks-fix /bin/bash
- In der Kommandozeile des Dockercontainers:
- Apache starten:
/usr/sbin/httpd
- Logdatei des Apaches mitlesen:
tail -f /var/log/httpd/error_log
- Beenden des Containers:
exit
- Apache starten:
<Location /ebooks-fix/>
ProxyPreserveHost On
ProxyPass http://localhost:8080/ebooks-fix/
ProxyPassReverse http://localhost:8080/ebooks-fix/
# no restrictions
require all granted
# restrictions
## require ip <some ip>
## require ip <some net>/24
</Location>