Verwendung des docker context show Befehls zur Anzeige des aktuellen Kontexts

DockerDockerBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

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.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL docker(("Docker")) -.-> docker/ContainerOperationsGroup(["Container Operations"]) docker(("Docker")) -.-> docker/SystemManagementGroup(["System Management"]) docker/ContainerOperationsGroup -.-> docker/ls("List Containers") docker/ContainerOperationsGroup -.-> docker/create("Create Container") docker/SystemManagementGroup -.-> docker/info("Display System-Wide Information") docker/SystemManagementGroup -.-> docker/system("Manage Docker") subgraph Lab Skills docker/ls -.-> lab-555135{{"Verwendung des docker context show Befehls zur Anzeige des aktuellen Kontexts"}} docker/create -.-> lab-555135{{"Verwendung des docker context show Befehls zur Anzeige des aktuellen Kontexts"}} docker/info -.-> lab-555135{{"Verwendung des docker context show Befehls zur Anzeige des aktuellen Kontexts"}} docker/system -.-> lab-555135{{"Verwendung des docker context show Befehls zur Anzeige des aktuellen Kontexts"}} end

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.

Einen 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 diesen 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 Standardkontext zurückwechseln und diesen 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.

Integration von docker context show in die Shell-Eingabeaufforderung

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 namens get_docker_context
  • docker context show 2>/dev/null: Dieser Befehl innerhalb der Funktion ruft den aktuellen Docker-Kontext ab. 2>/dev/null leitet Fehlerausgaben nach /dev/null um, um die Eingabeaufforderung sauber zu halten, falls Docker nicht läuft oder Probleme auftreten
  • PROMPT='$(get_docker_context) %~ %## ': Setzt die PROMPT-Umgebungsvariable, die das Aussehen der Shell-Eingabeaufforderung definiert
    • $(get_docker_context): Führt die get_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.