| | |
| | | #!/bin/sh |
| | | |
| | | # Dieses Skript ruft Docker zum Start eines Containers mit Groovy und startet |
| | | # darin das Groovy-Skript bilder.groovy. |
| | | # |
| | | # Nach jedem solchen Durchlauf wird der Container wieder geloescht. |
| | | # |
| | | # Besagtes Docker Kommando reicht das augenblickliche Arbeitsverzeichnis |
| | | # der Maschine, auf der Docker laeuft, als Pfad /scripts an den |
| | | # Docker Container. Auf diese Weise koennen Bilder im Dateisystem der Maschine, |
| | | # auf der Docker laeuft, verwendet werden. |
| | | # |
| | | # Aufruf mit ./kleiner.sh [groesse] [qualitaet] [eingangsordner] [ausgangsordner] |
| | | # Beispiel ./kleiner.sh 1200 0.75 /scripts/in /scripts/out |
| | | # |
| | | # Liegen dieses Skript (kleiner.sh) und das Groovy-Skript bilder.groovy |
| | | # im Pfad /scripts und enthält dieser Pfad die Verzeichnisse in und out |
| | | # wird mit dem Aufruf von kleiner.sh das Groovy-Skript ausgefuehrt. |
| | | # |
| | | # Der Aufruf mit den im Beispiel oben angegebenen Parametern bewirkt, dass alle |
| | | # Bilddateien in /scripts/in auf eine Laenge von 1.200 Bildpunkten entlang |
| | | # der laengsten Kante verkleinert, in der Qualitaet auf 75% des Originals |
| | | # verringert und in /scripts/out abgelegt werden. |
| | | # |
| | | # |
| | | # Erlaeuterung des unten stehenden Docker-Kommandos |
| | | # ------------------------------------------------- |
| | | # |
| | | # Die Option -v im docker run Kommando verbindet einen Ablageort mit einem |
| | | # Ordnernamen nach dem Schema [Ablageort]:[Ordnername] |
| | | # |
| | | # Die Option -w setzt das Arbeitsverzeichnis auf einen Ordner |
| | | # |
| | | # Die Kombination aus -v und -w im Kommando unten tut so, als gaebe es im |
| | | # Docker-Container einen Ordner /scripts und laesst diesen auf das |
| | | # Arbeitsverezichnis der lokalen Maschine verweisen, auf der Docker laeuft. |
| | | # Dieses Verzeichnis wird dann das Arbeitsverzeichnis fuer den Docker-Container |
| | | # |
| | | # Der Ausdruck "$PWD" ist ein Platzhalter (Print Working Directory) und |
| | | # bewirkt, dass an dessen Stelle der Pfad des aktuellen |
| | | # Arbeitsverzeichnisses ausgegeben wird |
| | | # |
| | | # --name groovy bedeutet Docker einen Container namens groovy anzulegen |
| | | # --rm bedeutet Docker den Container nach der Ausführung wieder zu entfernen |
| | | # groovy:alpine gibt Docker die Ablaufumgebung an, die dem Container zugrunde |
| | | # liegen soll |
| | | # groovy bilder.groovy ist schliesslich das Kommando, das der Container |
| | | # ausfuehren soll. Es soll also das Skript bilder.groovy in der |
| | | # Ablaufumgebung Groovy ausgefuehrt werden |
| | | # dahinter werden die Parameter weiter gereicht, die diesem Skript (kleiner.sh) |
| | | # uebergeben wurden |
| | | |
| | | docker run --rm -v "$PWD":/scripts -w /scripts --name groovy groovy:alpine groovy bilder.groovy $1 $2 $3 |
| | | docker run --rm -v "$PWD":/scripts -w /scripts --name groovy groovy:alpine groovy bilder.groovy $1 $2 $3 $4 |