Migrieren Sie das Docker-Image auf einen anderen Server

Was Sie erreichen wollen

Ich möchte ein Docker-Image, das auf einem Server erstellt wurde, auf einen anderen migrieren. Das zu migrierende Docker-Image verwendet das in Vorletzter Artikel erstellte Image. Das Betriebssystem sowohl des Migrationsquell- als auch des Migrationszielservers ist Amazon Linux 2.

Docker-Image speichern

Überprüfen Sie das Docker-Image. Migrieren Sie das Image mit dem Namen "ansible-demo".

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ansible-demo        latest              590a85caf1ec        5 days ago          553MB

Geben Sie dann das Bild in eine TAR-Datei aus.

$ docker save ansible-demo > ansible-demo.tar
$ ls
ansible-demo.tar

Wenn Sie die Version usw. in Tag angegeben haben, können Sie Folgendes ausführen Sie können das Bild unter dem angegebenen Tag-Namen speichern, und der Tag-Name wird vererbt.

$ docker save ansible-demo:3.9.0-slim-buster > ansible-demo.tar

Kopieren Sie die TAR-Datei auf den Zielserver

Verwenden Sie den Befehl scp, um die TAR-Datei auf den Zielserver zu kopieren.

$ sudo scp -i .ssh/Private Schlüsseldatei ansible-demo.tar [email protected]:/home/ec2-user
ansible-demo.tar	100%  568MB  64.2MB/s   00:08

Laden des Docker-Images

Laden Sie das Docker-Image auf den Zielserver.

$ sudo docker load < ansible-demo.tar
d0fe87fa8b8c: Loading layer [==================================================>]  72.49MB/72.49MB
225ef83ca30a: Loading layer [==================================================>]  7.316MB/7.316MB
83dcc4a0d3e6: Loading layer [==================================================>]  31.29MB/31.29MB
d93c07014f51: Loading layer [==================================================>]  4.608kB/4.608kB
b36284d246c4: Loading layer [==================================================>]  8.972MB/8.972MB
21aeb0eb9f43: Loading layer [==================================================>]  3.072kB/3.072kB
7f1f16e48b7f: Loading layer [==================================================>]  390.2MB/390.2MB
0ba8cec4031f: Loading layer [==================================================>]  85.38MB/85.38MB
Loaded image: ansible-demo:latest

Sie können sehen, dass die Bilddatei wie unten gezeigt geladen wird.

$ sudo docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ansible-demo        latest              590a85caf1ec        6 days ago          553MB

Funktionsprüfung

Starten wir nun den Docker-Container. Da WORKDIR in der Docker-Datei angegeben ist, führen Sie es über die Verzeichniserstellung aus. Der gleiche Container wie die Migrationsquelle wurde gestartet!

$ sudo mkdir /usr/src/app
$ cd /usr/src/app
$ sudo docker run -it --rm -v $(pwd):/usr/src/app ansible-demo /bin/bash
root@ff8c4ae0d144:/usr/src/app#

Recommended Posts

Migrieren Sie das Docker-Image auf einen anderen Server
Proxyserver durch Tintenfisch mit Docker-Image
[AWS CLI] Wechseln Sie die Rollen, um ein Docker-Image in einem anderen Konto abzurufen
Ich habe versucht, AdoptOpenJDK 11 (11.0.2) mit dem Docker-Image zu überprüfen
So verkleinern Sie das Spring Boot Docker-Image
Migrieren Sie von Java zu Server Side Kotlin + Spring-Boot
So geben Sie jemandem Ihr Image mit Docker
Schieben Sie das Image mit Jib zum Docker-Hub
Schritte zum Verschieben eines Docker-Images in die GitHub Container Registry (ghcr.io)
Migrieren Sie von JUnit 4 zu JUnit 5
Bereitstellen von einem lokalen Docker-Image auf Heroku
So installieren Sie Docker
Nicht verwendetes Docker-Image löschen
Führen Sie RMagick ein, um vorhandene Bilddateien in ein anderes Format zu konvertieren
Ich kann das Docker-Image nach dem Update auf Docker Desktop 2.4.0.0 nicht finden
Der Schlüssel zum Ausführen von Docker auf Raspberry Pi 4 (Ubuntu Server 20.04)
[Persönliche Notizen] So verschieben Sie ein Docker-Image in GitHub-Pakete
Installieren Sie Docker unter Ubuntu Server 20.04
Installieren Sie das Garn im Docker-Image
Extrahieren Sie Dateien aus Docker Image
So legen Sie Nginx von Docker fest
So beenden Sie den Rails-Server
Ich habe versucht, mit Docker eine Plant UML Server-Umgebung zu erstellen
Minimaler Workflow zum Verschieben des Docker-Images in die Github-Container-Registrierung mit Github-Aktionen
Verwenden Sie Jenkins, um in Docker zu erstellen und dann ein Docker-Image zu erstellen.
[GCP] Bis Sie das lokale Docker-Image in die Container-Registrierung verschieben