Virtualisierung mit Docker

Boot2Docker einrichten

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Im Normalfall ist Boot2Docker so angelegt, dass Sie Änderungen lediglich temporär speichern können. Finden Sie heraus, wie Sie Boot2Docker für den dauerhaften Einsatz korrekt konfigurieren.

Transkript

In diesem Video zeige ich Ihnen nun, wie Sie Boot2Docker entsprechend für den täglichen Gebrauch und für die Nutzung über mehrere Neustarts hinweg einrichten können. Boot2Docker beinhaltet einen so genannten SSH-Daemon, das heißt, es ist möglich relativ einfach eine Boot2Docker-Instanz via SSH also Secure Shell zu administrieren. Zunächst einmal notwendig ist es dafür allerdings, die IP der Maschine herauszufinden. Dies gelingt mit Hilfe des Befehls if conf und der Hilfe über die in Pipe in den less-Editor. An der Stelle sieht man nun, dass die zweite Netzwerkkarte die IP 192.168.56.101 hat. Das bedeutet, von der Windows-Maschine aus kann ich mit PuTTy beispielsweise darauf zugreifen. Zusätzlich muss ich das Passwort des Root-Benutzers ändern um es entsprechend nutzen zu können. Von nun ab nutze ich also den PuTTy-Client um mich entsprechend mit der Boot2Docker-Instanz via SSH zu verbinden. Ich habe nun die IP eingegeben für den Hostname, bestätige das Ganze, bekomme einen so genannte Security Alert, bestätige diesen mit Ja, logge mich als Root-Benutzer ein mit dem soeben vergebenen Passwort und sehe dann die Boot2Docker-Instanz, so wie ich sie von meinem Hypervisor kenne. Ein Problem, das Boot2Docker in seiner Standardkonfiguration mit sich bringt, ist, dass keine Änderungen Initial gespeichert werden. Das bedeutet, nach Neustart der virtuellen Maschine sind alle Images und auch alle Container, die ich heruntergeladen bzw. gestartet habe, nicht mehr vorhanden. Initial muss man dafür die jeweilige Festplatte, die an die virtuelle Maschine angehangen wurde, formatieren. Mit dem Befehl mkfs und ext4 kann ich nun das Dateisystem entweder auf eine vorher partitionierte Festplatte anwenden oder direkt auf das gesamte Device. In dem Fall ist das Standard-Device für die Hauptfestplatte dev/sda. Wenn ich das Ganze bestätige, werde ich danach gefragt, ob es sich um das gesamte Gerät handelt. Ich bestätige mit Ja und das Dateisystem wird nun auf das jeweilige Festplatten-Image geschrieben. Zum jetzigen Zeitpunkt ist Boot2Docker allerdings immer noch nicht in der Lage, in das Dateisystem hineinzuschreiben. Wenn ich df-h aufrufe, sehe ich, dass lediglich mein Arbeitsspeicher als Speicherplatz aktuell zur Verfügung steht. Ich muss nun zusätzlich vor einem Neustart der virtuellen Maschine mit dem Befehl tune2fs und dem so genannten Label boot2docker-data die entsprechende Festplatte für Boot2Doker markieren. Wenn ich den Reboot-Befehl benutze, wird entsprechend Boot2Docker nach dem Neustart mit der Festplatte zu starten beginnen. Ich habe nun in der Zwischenzeit die Maschine neu starten sehen und das Passwort für den Root-Nutzer neu vergeben. Ich starte die Session neu. Ich werde darüber gewarnt, dass sich der SHH-Schlüssel nun verändert hat. Dieses Verhalten passiert hier nur einmalig da durch den Neustart die Boot2Docker-ISO im Normalfall immer einen neuen Schlüssel erzeugt. Dieser wird aber dann, insofern eine Festplatte vorhanden ist, permanent gespeichert. Ich logge mich also nun als Root-Benutzer ein und kann mit df-h nun bestätigen, dass die Festplatte dev/sda als Basis-Mount für den var/lip/docker-Ordner dient. Wenn ich nun in diesen Ordner navigiere, sehe ich entsprechend den var-Ordner, in dem sich auch die Konfigurationsdaten für Boot2Docker befinden. Unter gewissen Umständen gibt es Änderungen, die ich möchte, dass sie automatisch bei jedem Neustart der Instanz vorgenommenen werden. Dazu gehören unter anderem die Nutzung eines Proxys für Docker selbst. Denn in Unternehmen hat man oft nur einen HTTP-Proxy zur Verfügung um auf das Internet zuzugreifen. Für Parameter und Optionen, die Docker selbst betreffen muss man eine so genannte Profile- Datei im Ordner boot2docker anlegen. Diese wird beim nächsten Neustart automatisch genutzt als Profile für den Docker-Nutzer sobald der Docker-Dienst gestartet wird. Die Festlegung von Umgebungsvariablen kann wie in diesem Beispiel so aussehen. In dem Fall wird der HTTP-Proxy festgelegt als globale Variable, die dann entsprechend auch von Docker wahrgenommen wird. Ich bestätige das Ganze und speichere die Datei mit :wq und beim nächsten Neustart der Docker- Instanz wäre nun der Proxy konfiguriert. Ein weiterer sehr häufig vorkommender Anwendungsfall ist das Anlegen von Befehlen, die beim Start der Instanz ausgeführt werden zum Beispiel das Setzen eines Passworts für einen Nutzer wie den Root-Nutzer oder auch die Konfiguration der Netzwerkkarten. Denn anders als bei herkömmlichen Distributionen wird diese Konfiguration im Normalfall nicht persistiert. Für diesen Anwendungsfall lege ich die so genannte bootlocal.sh auch im Ordner boot2docker an. In diesem Beispiel nehme ich den Nutzer Root und das entsprechende Passwort über den Befehl echo und sende ihn an den chpassword-Befehl. Damit wird beim nächsten Neustart der Instanz automatisch für den Root-Nutzer das Password password123 gesetzt. Möchte ich mich nun also mit SSH wieder verbinden, wird das automatisch funktionieren, ohne dass ich Änderungen am Hypervisor selbst vornehmen muss. Wichtig an der Stelle ist noch, dass die boot.local.sh entsprechend Execute-Rechte braucht. Sonst wird sie bei Start des Betriebssystems nicht ausgeführt. Ich habe Ihnen nun also gezeigt, wie Sie Boot2Docker einrichten können, so dass Sie tagtäglich Gebrauch davon machen können auch zwischen den Neustarts der virtuellen Maschine.

Virtualisierung mit Docker

Steigen Sie in die Container-Virtualisierung ein und entdecken Sie einfaches Prototyping neuer und unkomplizierte Skalierung bestehender Anwendungen.

3 Std. 36 min (36 Videos)
Derzeit sind keine Feedbacks vorhanden...

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!