Das S2I-Toolkit erzeugt betriebsbereite Images, indem es Quelldateien in eine laufende Instanz eines Builder-Basisimages einfügt, wobei Skripts im Builder-Image diesen Quellcode in eine lauffähige Anwendung verwandeln. Aus dem Container, in dem der Build-Prozess ausgeführt wurde, wird dann ein lauffähiges Anwendungs-Image erstellt.
Das Befehlszeilentool, das den S2I-Build-Prozess steuert, heißt s2i. Wenn Sie eine Anwendung aus dem Quellcode in OpenShift mit S2I bereitstellen, werden alle Schritte zum Ausführen des s2i-Befehlszeilentools für Sie erledigt.
Um das Container-Image zu erstellen, führen Sie s2i build aus und geben Sie den Speicherort Ihres Anwendungsquellcodes, den Namen des S2I-Builder-Images und den Namen für das erstellte Anwendungs-Image an:
$ s2i build [location of app source code] [name of image]
Details des erzeugten Bildes können durch Ausführen von Docker-Bildern angezeigt werden:
$ docker images
Wenn beim Ausführen des Befehls s2i ein Fehler wie unten gezeigt auftritt:
s2i: command not found
Sie können das folgende Paket gemäß Ihrer Wahl der Distribution installieren.
Verteilung | Befehl |
---|---|
OS X | Quell-zu-Image-Installation brauen |
Fedora | dnf-Installation Source-to-Image |
Schlussfolgerung
Das Source-to-Image-Tool implementiert einen Mechanismus, um Anwendungsquellcode zu nehmen und ihn in ein Container-Image zu integrieren. Das Tool funktioniert, indem es einen Container mit einem S2I-Builder-Image startet, den Quellcode der Anwendung in den Container einfügt und ein Assemble-Skript ausführt, um den Inhalt des Images einzurichten.