Docker Machine

Docker Machine war ein frühes Docker-Tool zum Erstellen und Verwalten von Docker-Hosts, aber mit der Reifung von Docker Desktop, Terraform und Kubernetes hat es seine historische Mission erfüllt und wurde vollständig ersetzt.

Docker Desktop in lokalen EntwicklungsszenarienVollständiger Ersatzhat Docker Machine ersetzt, die für den praktischen Einsatz nicht mehr geeignet ist.

Vergleichspunkt Docker Machine Docker Desktop
Produktpositionierung Tool zur Erstellung und Verwaltung von Docker-Hosts Lokale integrierte Docker-Entwicklungsumgebung
Hauptzweck VM erstellen und Docker Engine installieren Docker direkt lokal ausführen
Typische Ära der Nutzung Docker-Frühzeit (1.x ~ 18.x) Aktueller Mainstream
Unterstützung für macOS / Windows Indirekt (hängt von VirtualBox ab) Native Unterstützung
Ob zusätzliche Virtualisierungssoftware erforderlich ist Ja (VirtualBox / VMware) Nein (integriert)
Docker-Engine-Verwaltung Manuell/halbautomatisch Vollautomatisch
Nutzungskomplexität Hoch Niedrig
Ob eine GUI bereitgestellt wird nein Ja
Kubernetes-Unterstützung Nicht unterstützt Optional integriert
Multi-Docker-Host-Verwaltung Unterstützt Nicht unterstützt (Fokus auf eigenständige Maschine)
Für Produktionsumgebungen geeignet Nicht geeignet Nicht geeignet
Offizieller Wartungsstatus Im Grunde keine Aktualisierungen mehr Kontinuierlich aktiv
Aktuelle Empfehlung ❌ Nicht empfohlen ✅ Sehr empfehlenswert

Einführung

Docker Machine ist ein Tool, mit dem Sie Docker auf virtuellen Hosts installieren können, und Sie können den Befehl docker-machine verwenden, um die Hosts zu verwalten.

Docker Machine kann auch alle Docker-Hosts zentral verwalten, zum Beispiel Docker schnell auf 100 Servern installieren.

Die von Docker Machine verwalteten virtuellen Hosts können lokal oder bei Cloud-Anbietern sein, wie Alibaba Cloud, Tencent Cloud, AWS oder DigitalOcean.

Mit dem Befehl docker-machine können Sie verwaltete Hosts starten, inspizieren, stoppen und neu starten sowie den Docker-Client und -Daemon aktualisieren und den Docker-Client so konfigurieren, dass er mit Ihren Hosts kommuniziert.


Installation

Bevor Sie Docker Machine installieren, müssen Sie zuerst Docker installieren.

Docker Machine kann auf mehreren Plattformen installiert und verwendet werden, einschließlich Linux, macOS und Windows.

Linux-Installationsbefehl

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
  sudo mv /tmp/docker-machine /usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machine

macOS-Installationsbefehl

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machine

Windows-Installationsbefehl

Wenn Sie sich auf der Windows-Plattform befinden, können SieGit BASHverwenden und den folgenden Befehl eingeben:

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  mkdir -p "$HOME/bin" &&
  curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" &&
  chmod +x "$HOME/bin/docker-machine.exe"

Prüfen Sie, ob die Installation erfolgreich war:

$ docker-machine version
docker-machine version 0.16.0, build 9371605

Hinweis:Die Versionshinweise für jede Version enthalten ebenfalls Installationsanweisungen:https://github.com/docker/machine/releases


Nutzung

Dieses Kapitel stellt die Verwendung von docker-machine über VirtualBox vor. Die Vorgänge für andere Cloud-Anbieter sind im Grunde dieselben. Einzelheiten entnehmen Sie bitte der Dokumentation des jeweiligen Anbieters.

1. Verfügbare Maschinen auflisten

Sie können sehen, dass derzeit hier nur die Standard-Virtualmaschine vorhanden ist.

$ docker-machine ls

2. Maschine erstellen

Erstellen Sie eine Maschine namens test.

$ docker-machine create --driver virtualbox test
  • --driver: Geben Sie den Treibertyp an, der zum Erstellen der Maschine verwendet wird; hier ist es virtualbox.

3. IP der Maschine anzeigen

$ docker-machine ip test

4、Maschine stoppen

$ docker-machine stop test

5、Maschine starten

$ docker-machine start test

6、In die Maschine einloggen

$ docker-machine ssh test

docker-machine Befehlsparameterbeschreibung

  • docker-machine active: Den aktuell aktiven Docker-Host anzeigen.

    $ docker-machine ls
    
    NAME      ACTIVE   DRIVER         STATE     URL
    dev       -        virtualbox     Running   tcp://192.168.99.103:2376
    staging   *        digitalocean   Running   tcp://203.0.113.81:2376
    
    $ echo $DOCKER_HOST
    tcp://203.0.113.81:2376
    
    $ docker-machine active
    staging
  • config: Verbindungsinformationen für den aktuell aktiven Docker-Host anzeigen.
  • create: Einen Docker-Host erstellen
  • env: Die zum Verbinden mit einem Host benötigten Umgebungsvariablen anzeigen.
  • inspect: Detaillierte Informationen des angegebenen Docker im JSON-Format ausgeben.
  • ip: Die Adresse des angegebenen Docker-Hosts abrufen.
  • kill: Den angegebenen Docker-Host direkt beenden.
  • ls: Alle verwalteten Hosts auflisten.
  • provision: Den angegebenen Host neu konfigurieren
  • regenerate-certs: TLS-Informationen für einen Host neu generieren.
  • restart: Den angegebenen Host neu starten
  • rm: Einen Docker-Host löschen, und die entsprechende virtuelle Maschine wird ebenfalls gelöscht.
  • ssh: Über SSH eine Verbindung zum Host herstellen und Befehle ausführen.
  • scp: scp verwenden, um Daten remote zwischen Docker-Hosts und zwischen einem Docker-Host und dem lokalen Host zu kopieren
  • mount: SSHFS verwenden, um Verzeichnisse von einem Computer einzubinden oder auszuhängen
  • start: Einen angegebenen Docker-Host starten. Wenn das Objekt eine virtuelle Maschine ist, wird die virtuelle Maschine gestartet.
  • status: Den Status des angegebenen Docker-Hosts abrufen (einschließlich: Running, Paused, Saved, Stopped, Stopping, Starting, Error), usw.
  • stop: Einen angegebenen Docker-Host stoppen.
  • upgrade: Die Docker-Version eines angegebenen Hosts auf die neueste aktualisieren
  • url: Die lauschende URL des angegebenen Docker-Hosts abrufen.
  • version: Zeigt die Version von Docker Machine oder die Docker-Version des Hosts an.
  • help: Hilfeinformationen anzeigen
Weitere Erweiterungen