Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
client:container [2021/11/18 11:19 CET] – [Metadaten, Container-Typ] Daten-Container update risenmanclient:container [2021/11/25 15:42 CET] – [Konfiguration des Containers] verfl. chr
Zeile 16: Zeile 16:
 {clear} {clear}
  
-==== Anlegen des Container-Image ====+==== Anlegen des Container-Images ====
  
 [{{ :bwsuite:container:211118_bwlp_suite_new_image_container.png?400|bwLehrpool-Suite: Container-Image erstellen}}] [{{ :bwsuite:container:211118_bwlp_suite_new_image_container.png?400|bwLehrpool-Suite: Container-Image erstellen}}]
-Für die Erstellung eines Container-Images stehen Ihnen zwei Möglichkeiten zur Auswahl. Sie können ihr selbstgebautes Image als Docker-Archive exportieren und hochladen, oder auf bestehende Abbilder aus einem Image-Repositorium, beispielsweise [[https://hub.docker.com/|Docker Hub]]), zurückgreifen.+Zur Erstellung eines Container-Images stehen Ihnen zwei Möglichkeiten zur Auswahl. Sie können Ihr selbstgebautes Image als Docker-Archive exportieren und hochladen, oder auf bestehende Abbilder aus einem Image-Repositorium, beispielsweise [[https://hub.docker.com/|Docker Hub]]), zurückgreifen.
  
 <html><!-- Vielleicht gibt es später die entsprechenden Funktionen um Containr Images mit Dockerfiles zu bauen... <html><!-- Vielleicht gibt es später die entsprechenden Funktionen um Containr Images mit Dockerfiles zu bauen...
Zeile 29: Zeile 29:
   - Docker-Archive ist die bevorzugte Methode, um in bwLehrpool Container-Images anzulegen. Exportieren Sie Ihr erstelltes Image mit [[https://docs.docker.com/engine/reference/commandline/save/|docker save]] und fügen Sie es dem Upload hinzu.   - Docker-Archive ist die bevorzugte Methode, um in bwLehrpool Container-Images anzulegen. Exportieren Sie Ihr erstelltes Image mit [[https://docs.docker.com/engine/reference/commandline/save/|docker save]] und fügen Sie es dem Upload hinzu.
   - Soll ein bestehendes Image von Docker Hub verwendet werden, geben Sie lediglich den Repository-Namen an (z.b. python:3.7, tensorflow/tensorflow:nightly-gpu-jupyter, etc.).   - Soll ein bestehendes Image von Docker Hub verwendet werden, geben Sie lediglich den Repository-Namen an (z.b. python:3.7, tensorflow/tensorflow:nightly-gpu-jupyter, etc.).
-  - Geben Sie Ihrem Container-Images einen sprechenden Namen.+  - Geben Sie Ihrem Container-Image einen sprechenden Namen.
  
-<note important> Die Dateiendung für Archive muss für bwLehrpool-Suite **.tar** lauten.</note> +<note important>Die Dateiendung für Archive muss für die bwLehrpool-Suite **.tar** lauten.</note> 
-<note important> Beachten Sie beim Exportieren von Docker-Images, dass für das Docker-Archive Dateiberechtigungen stimmen.</note>+<note important>Beachten Sie beim Exportieren von Docker-Images, dass für das Docker-Archive Dateiberechtigungen stimmen.</note>
  
-<note tip>Docker-Archive profitieren aktuell von [[satellite:dnbd3_lokales_caching|lokalem Caching]] </note>+<note tip>Docker-Archive profitieren aktuell von [[satellite:dnbd3_lokales_caching|lokalem Caching]].</note>
  
  
Zeile 45: Zeile 45:
 Vergeben Sie dem Image eine aussagekräftige Beschreibung mit Informationen wie: Vergeben Sie dem Image eine aussagekräftige Beschreibung mit Informationen wie:
   * Welches Quell-Image benutzt wird, von wo es stammt,   * Welches Quell-Image benutzt wird, von wo es stammt,
-  * Welche Anwendung in welcher Version in dem Container enthalten sind, …+  * welche Anwendung in welcher Version in dem Container enthalten sind, …
  
 === Container-Image-Typ === === Container-Image-Typ ===
Zeile 53: Zeile 53:
   * Pool (Default): Ein einfaches Container-Image, das rein zur Verwendung auf bwLehrpool-Clients erstellt wurde.   * Pool (Default): Ein einfaches Container-Image, das rein zur Verwendung auf bwLehrpool-Clients erstellt wurde.
   * Daten: Ein spezielles Container-Image, das nur Daten enthält. Beispielsweise können so Daten-Container mit Trainingsdaten für Machine-Learning (Mnist, ImageNet, CIFAR, ...) separat bereitgestellt werden.    * Daten: Ein spezielles Container-Image, das nur Daten enthält. Beispielsweise können so Daten-Container mit Trainingsdaten für Machine-Learning (Mnist, ImageNet, CIFAR, ...) separat bereitgestellt werden. 
-  <note important>Daten für einen Daten-Container müssen derzeit unter **/data/** abgelegt sein! Verwenden Sie zur Erstellung von Daten-Container kleine Basis-Images wie [[https://hub.docker.com/_/alpine|Alpine]] oder [[https://hub.docker.com/_/busybox|BusyBox]]</note>+  <note important>Daten für einen Daten-Container müssen derzeit unter **/data/** abgelegt werden! Verwenden Sie zur Erstellung von Daten-Containern kleine Basis-Images wie [[https://hub.docker.com/_/alpine|Alpine]] oder [[https://hub.docker.com/_/busybox|BusyBox]]</note>
  
 <html><!-- Batch-System bezieht seine Container von eigener Container-Registry <html><!-- Batch-System bezieht seine Container von eigener Container-Registry
Zeile 74: Zeile 74:
   * **Container-Startbefehl**: Bei der Erstellung eines Containers wird durch die im Dockerfile enthaltenen Angaben ENTRYPOINT bzw. CMD festgelegt, welche und wie die Containeranwendung gestartet wird. Durch Überschreiben dieser Angaben können Sie das Verhalten der genutzten Anwendung Ihren Wünschen entsprechend anpassen (siehe [[https://docs.docker.com/engine/reference/builder/|Dockerreferenz]]).   * **Container-Startbefehl**: Bei der Erstellung eines Containers wird durch die im Dockerfile enthaltenen Angaben ENTRYPOINT bzw. CMD festgelegt, welche und wie die Containeranwendung gestartet wird. Durch Überschreiben dieser Angaben können Sie das Verhalten der genutzten Anwendung Ihren Wünschen entsprechend anpassen (siehe [[https://docs.docker.com/engine/reference/builder/|Dockerreferenz]]).
  
-  * **Bind Mount-Konfiguration**: Geben Sie hier die Verzeichnisse andie in den Container hineingemountet werden sollenUnter „SOURCE“ finden Sie vordefinierte Labels für Quellen. „USER_HOME“ stellt das Home Verzeichnis des angemeldeten Users dar, „USER_TMP“ einen Bereich in /tmp. Die Buchstaben sind als Laufwerkbuchstaben zu betrachten und referenzieren ein Netzlaufwerk, das in den Veranstaltungsdetails festgelegt werden kann. „TARGET“ stellt das Zielverzeichnis innerhalb des Containers darin das die Quelle gemountet wird. Weitere Informationen zur Anwendung von Bind Mounts finden Sie in der Docker-Dokumentation.+  * **Bind Mount-Konfiguration**: Durch Anlegen von Bind Mounts wird festgelegtwelche Verzeichnisse aus dem Host-System und/oder interne Docker-Speicherbereiche (Volumes) im Container unter einem festgelegten Dateipfad eingehängt werden. Dabei sind eine Quelle (Source) und ein Ziel (Target) zwingend erforderlich, optional können zusätzliche Optionen das Verhalten im Container beeinflussen (z.b.  READ_ONLY). Weitere Informationen zu Bind Mounts finden Sie in der [[https://docs.docker.com/storage/bind-mounts/|Docker-Dokumentation]]. Derzeit können Sie nur vordefinierte Labels als Quelle auswählen, diese sind wie folgt definiert:  
 +    * //USER_HOME// stellt das Home Verzeichnis des angemeldeten Users dar
 +    * //USER_TMP// stellt dem User ein temporäres Verzeichnis zum Austausch unter ///tmp/docker/<USERNAME>/// bereit. 
 +    * //Buchstaben// referenzieren den Laufwerksbuchstaben eines Netzlaufwerks, das in den Veranstaltungsdetails festgelegt werden kann. 
 +    * //Daten-Container// referenziert ein zuvor hochgeladenes Container-Image, das als Type Daten-Container markiert wurde.
  
 ==== Zusätzliche Einstellungen ==== ==== Zusätzliche Einstellungen ====
Drucken/exportieren