Einführung
In diesem Lab lernen Sie, wie Sie den Befehl docker context show verwenden, um den aktuell aktiven Docker-Kontext anzuzeigen. Sie beginnen damit, den Standardkontext anzuzeigen, der eine Verbindung zum lokalen Docker-Daemon herstellt.
Anschließend erstellen Sie einen neuen Docker-Kontext, wechseln zu diesem neuen Kontext und überprüfen die Änderung mit docker context show. Abschließend kehren Sie zum Standardkontext zurück und erkunden, wie Sie den Befehl docker context show in Ihre Shell-Eingabeaufforderung integrieren können, um Ihre aktuelle Docker-Verbindung leicht sichtbar zu machen.
Standard-Docker-Kontext anzeigen
In diesem Schritt lernen Sie, wie Sie den standardmäßigen Docker-Kontext anzeigen. Ein Docker-Kontext (Docker context) ist eine Möglichkeit, sich mit verschiedenen Docker-Daemons zu verbinden. Standardmäßig verwendet Docker den default-Kontext, der eine Verbindung zum auf dem lokalen Rechner laufenden Docker-Daemon herstellt.
Um den aktuellen Docker-Kontext anzuzeigen, können Sie den Befehl docker context show verwenden.
docker context show
Als Ausgabe sollten Sie default sehen, was darauf hinweist, dass Sie derzeit den standardmäßigen Docker-Kontext verwenden.
Neuen Docker-Kontext erstellen
In diesem Schritt erstellen wir einen neuen Docker-Kontext. Durch das Anlegen eines neuen Kontexts können Sie Verbindungsparameter für einen anderen Docker-Daemon definieren, der sich auf einem entfernten Rechner oder in einer anderen lokalen Konfiguration befinden kann.
Wir erstellen einen Kontext namens my-context, der eine Verbindung zum lokalen Docker-Daemon herstellt. Obwohl dies für eine lokale Verbindung redundant erscheinen mag, demonstriert es den Prozess der Kontexterstellung.
Um einen neuen Kontext zu erstellen, verwenden wir den Befehl docker context create gefolgt vom Kontextnamen. Zusätzlich müssen wir den Endpunkt für den Docker-Daemon mit dem Flag --docker angeben. Für einen lokalen Daemon ist der Endpunkt typischerweise unix:///var/run/docker.sock.
docker context create my-context --docker "unix:///var/run/docker.sock"
Nach Ausführung des Befehls sollten Sie eine Ausgabe sehen, die bestätigt, dass der Kontext my-context erstellt wurde.
Um zu überprüfen, ob der Kontext erstellt wurde, können Sie alle verfügbaren Kontexte mit dem Befehl docker context ls auflisten.
docker context ls
In der Ausgabe sollten Sie my-context zusammen mit dem default-Kontext aufgelistet sehen.
Zum neuen Docker-Kontext wechseln und anzeigen
In diesem Schritt wechseln wir zu dem im vorherigen Schritt erstellten Docker-Kontext und zeigen anschließend den aktuell aktiven Kontext an, um den Wechsel zu bestätigen.
Um zu einem anderen Docker-Kontext zu wechseln, verwenden wir den Befehl docker context use gefolgt vom Namen des gewünschten Kontexts. In unserem Fall lautet der Kontextname my-context.
docker context use my-context
Sie sollten eine Ausgabe sehen, die bestätigt, dass der Kontext zu my-context gewechselt wurde.
Lassen Sie uns nun erneut den aktuellen Docker-Kontext mit dem Befehl docker context show anzeigen, um zu überprüfen, ob wir tatsächlich my-context verwenden.
docker context show
Die Ausgabe dieses Befehls sollte nun my-context lauten, was einen erfolgreichen Wechsel bestätigt.
Zum Standard-Kontext zurückwechseln und anzeigen
In diesem Schritt wechseln wir zurück zum standardmäßigen Docker-Kontext. Dies ist nützlich, wenn Sie mit einem anderen Kontext gearbeitet haben und zum normalen lokalen Docker-Daemon zurückkehren möchten.
Um zum Standardkontext zurückzuwechseln, verwenden wir den Befehl docker context use gefolgt vom Namen des Standardkontexts, der default lautet.
docker context use default
Sie sollten eine Ausgabe sehen, die bestätigt, dass der Kontext zurück zu default gewechselt wurde.
Lassen Sie uns nun erneut den aktuellen Docker-Kontext mit dem Befehl docker context show anzeigen, um zu überprüfen, ob wir wieder den default-Kontext verwenden.
docker context show
Die Ausgabe dieses Befehls sollte nun default lauten, was den erfolgreichen Wechsel bestätigt.
Docker-Kontextanzeige in die Shell-Eingabeaufforderung integrieren
In diesem Schritt integrieren wir den Befehl docker context show in Ihre Shell-Eingabeaufforderung. Dadurch können Sie den aktuellen Docker-Kontext direkt in der Terminal-Eingabeaufforderung sehen, was es einfacher macht, nachzuvollziehen, mit welchem Docker-Daemon Sie interagieren.
Wir werden die .zshrc-Datei in Ihrem Home-Verzeichnis anpassen, der Konfigurationsdatei für die Zsh-Shell. Wir fügen eine Funktion hinzu, die den aktuellen Docker-Kontext abruft und deren Ausgabe dann in die Eingabeaufforderung einbindet.
Öffnen Sie zunächst die .zshrc-Datei mit dem nano-Editor:
nano ~/.zshrc
Scrollen Sie zum Ende der Datei und fügen Sie folgende Zeilen hinzu:
## Function to get current Docker context
get_docker_context() {
docker context show 2> /dev/null
}
## Add Docker context to prompt
PROMPT='$(get_docker_context) %~ %## '
Hier die Erklärung dieser Zeilen:
get_docker_context(): Definiert eine neue Shell-Funktion namensget_docker_contextdocker context show 2>/dev/null: Dieser Befehl innerhalb der Funktion ruft den aktuellen Docker-Kontext ab.2>/dev/nullleitet Fehlerausgaben nach/dev/nullum, um die Eingabeaufforderung sauber zu halten, falls Docker nicht läuft oder Probleme auftretenPROMPT='$(get_docker_context) %~ %## ': Setzt diePROMPT-Umgebungsvariable, die das Aussehen der Shell-Eingabeaufforderung definiert$(get_docker_context): Führt dieget_docker_context-Funktion aus und bindet deren Ausgabe ein%~: Zeigt das aktuelle Arbeitsverzeichnis an, wobei das Home-Verzeichnis als~abgekürzt wird%#: Zeigt#für den Root-Benutzer oder%für normale Benutzer an
Speichern Sie die Datei mit Strg + X, dann Y und anschließend Enter.
Um die Änderungen in der aktuellen Terminal-Sitzung zu übernehmen, müssen Sie die .zshrc-Datei neu einlesen:
source ~/.zshrc
Nach dem Neuladen sollte Ihre Eingabeaufforderung nun den aktuellen Docker-Kontext (standardmäßig default) vor dem aktuellen Verzeichnis anzeigen.
Sie können dies testen, indem Sie erneut zu my-context wechseln:
docker context use my-context
Ihre Eingabeaufforderung sollte sich aktualisieren und my-context gefolgt vom aktuellen Verzeichnis anzeigen.
Wechseln Sie dann zurück zum Standardkontext:
docker context use default
Ihre Eingabeaufforderung sollte wieder default anzeigen.
Zusammenfassung
In diesem Lab haben wir gelernt, wie man Docker-Kontexte mit dem Befehl docker context show verwaltet. Wir begannen damit, den standardmäßigen Docker-Kontext anzuzeigen, der mit dem lokalen Daemon verbunden ist. Anschließend erstellten wir einen neuen Kontext namens my-context und demonstrierten den Prozess der Definition von Verbindungsparametern für einen anderen Daemon, auch wenn es sich in diesem Beispiel um denselben lokalen Daemon handelte.
Nach der Erstellung übten wir das Wechseln zum neu erstellten Kontext mit docker context use und überprüften den aktiven Kontext mit docker context show. Diese praktische Erfahrung festigte unser Verständnis dafür, wie man zwischen verschiedenen Docker-Umgebungen navigiert und den aktuellen Verbindungspunkt bestätigt.



