Wie kann ich mit Docker eine schnelle Migration und Fernverwaltung von Containern unter Linux erreichen?
Übersicht
Docker ist eine häufig verwendete Containerisierungstechnologie, die eine schnelle Bereitstellung und Verwaltung von Anwendungen ermöglicht. In der Linux-Umgebung ist die Installation und Verwendung von Docker relativ einfach und kann über die Befehlszeile oder visuelle Tools ausgeführt werden. In diesem Artikel wird erläutert, wie Sie mit Docker eine schnelle Migration und Fernverwaltung von Containern unter Linux implementieren, und entsprechende Codebeispiele bereitstellen.
Docker-Installation und -Konfiguration
Zuerst müssen Sie Docker auf dem Linux-System installieren. In den meisten Linux-Distributionen kann es über Paketmanager wie apt, yum oder dnf installiert werden. Das Folgende ist ein Beispielbefehl zum Installieren von Docker auf einem Ubuntu-System:
$ sudo apt-get update $ sudo apt-get install docker.io
Nachdem die Installation abgeschlossen ist, können Sie überprüfen, ob Docker erfolgreich installiert wurde, indem Sie den folgenden Befehl verwenden:
$ docker version
Als nächstes müssen Sie eine Benutzergruppe erstellen kann remote auf Docker zugreifen. Sie können eine Gruppe manuell erstellen und dann vorhandene Benutzer zur Gruppe hinzufügen. Anschließend müssen Sie sich erneut anmelden, damit die Änderungen an der Benutzergruppe wirksam werden:
$ sudo groupadd docker $ sudo usermod -aG docker $USER $ newgrp docker
Schließlich müssen Sie den Docker-Dienst neu starten, damit er wirksam wird:
$ sudo systemctl restart docker
Speichern Sie zunächst den aktuellen Status des Containers als Bild auf dem Quellhost:
$ docker commit <container_id> <image_name>
wobei <container_id>
die Kennung des Containers ist, der auf dem Quellhost ausgeführt wird, < image_name>
ist der Name des neuen Bildes. <container_id>
是源主机上正在运行的容器的标识符,<image_name>
是新镜像的名称。
然后,将镜像导出到文件中:
$ docker save <image_name> -o <output_file>
其中,<image_name>
是要导出的镜像的名称,<output_file>
是导出的文件的路径。
接着,在目标主机上导入镜像文件:
$ docker load -i <input_file>
其中,<input_file>
是导入的镜像文件的路径。
最后,运行导入的镜像:
$ docker run -d <image_name>
首先,需要在Docker服务的配置文件中启用远程API。编辑/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
<image_name>
der Name des zu exportierenden Bildes und <output_file>
ist der exportierte Dateipfad. Als nächstes importieren Sie die Bilddatei auf dem Zielhost: $ sudo systemctl daemon-reload $ sudo systemctl restart docker
<input_file>
der Pfad der importierten Bilddatei ist. Führen Sie abschließend das importierte Image aus: $ curl http://localhost:2375/version
Docker bietet eine Remote-API, die Container und Images über HTTP-RESTful-Schnittstellen verwalten kann. Sie können den Befehl „curl“ verwenden oder ein Skript schreiben, um eine Remoteverwaltung von Docker zu erreichen.
/lib/systemd/system/docker.service
und ändern Sie die ExecStart-Zeile wie folgt: $ curl http://localhost:2375/containers/json
$ curl -X POST http://localhost:2375/containers/create?name=<container_name> -d '{"Image":"<image_name>"}' $ curl -X POST http://localhost:2375/containers/<container_id>/start
$ curl -X POST http://localhost:2375/containers/<container_id>/stop
$ curl -X DELETE http://localhost:2375/containers/<container_id>
import requests url = "http://localhost:2375/containers/json" response = requests.get(url) containers = response.json() for container in containers: print(container["Names"][0])
Das obige ist der detaillierte Inhalt vonWie kann Docker verwendet werden, um eine schnelle Migration und Fernverwaltung von Containern unter Linux zu erreichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!