Nachdem Sie einen Container lokal erstellt haben, können Sie basierend auf diesem Container ein lokales Image erstellen und dieses Image zum Herunterladen und Verwenden im Internet an den Docker-Hub senden. Sehen Sie sich das Bild an [root@docker-test1 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE docker.io/ubuntu 16.04 7aa3602ab41e vor 5 Wochen 115 MB Erstellen Sie einen Container mit dem Namen myubuntu [root@docker-test1 ~]# docker run -ti --name myubuntu -d docker.io/ubuntu [root@docker-test1 ~]# docker ps CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN 651a8541a47d docker.io/ubuntu "/bin/bash" vor 37 Sekunden Up 36 Sekunden myubuntu Docker-Commit: Erstellen Sie ein neues Image aus einem Container. # Docker-Commit [OPTIONEN] CONTAINER [REPOSITORY[:TAG]] -a: übermittelter Spiegelautor; -c: Verwenden Sie Dockerfile-Anweisungen, um ein Image zu erstellen; -m: Beschreibungstext beim Absenden; -p: Hält den Container beim Commit an. Senden Sie das Image basierend auf diesem Myubuntu-Container [root@docker-test1 ~]# docker commit -a "wangshibo" -m "this is test" 651a8541a47d myubuntu:v1 sha256:6ce4aedd12cda693d0bbb857cc443a56f9f569106e09ec61aa53563d0932ea4d Überprüfen Sie das Image erneut und stellen Sie fest, dass das Image myubuntu:v1 an das lokale [root@docker-test1 ~]# Docker-Images übermittelt wurde. REPOSITORY TAG BILD ID ERSTELLT GRÖSSE myubuntu v1 6ce4aedd12cd vor 59 Sekunden 84,1 MB docker.io/ubuntu 16.04 7aa3602ab41e vor 5 Wochen 115 MB Pushen Sie das mybuntu:v1-Image in das Docker-Hub-Repository # docker push [OPTIONS] NAME[:TAG] OPTIONS-Beschreibung: --disable-content-trust: Bildüberprüfung ignorieren, standardmäßig aktiviert. Melden Sie sich zuerst beim Docker-Hub an (Benutzername: Wangshibo, Passwort: *******). [root@docker-test1 ~]# Docker-Anmeldung Melden Sie sich mit Ihrer Docker-ID an, um Bilder vom Docker Hub zu pushen und abzurufen. Wenn Sie keine Docker-ID haben, gehen Sie zu https://hub.docker.com, um eine zu erstellen. Benutzername (wangshibo): wangshibo Passwort: Anmeldung erfolgreich [root@docker-test1 ~]# docker push wangshibo/myubuntu:v1 Der Push verweist auf ein Repository [docker.io/wangshibo/myubuntu] Ein Image mit dem Tag „docker.io/wangshibo/myubuntu“ existiert lokal nicht. Hier müssen Sie das Ubuntu:v1-Image umbenennen und vor dem Namen die Docker-ID Ihres eigenen Docker-Hubs hinzufügen, d. h. wangshibo [root@docker-test1 ~]# Docker-Tag 6ce4aedd12cd wangshibo/myubuntu:v1 [root@docker-test1 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE myubuntu v1 6ce4aedd12cd vor 6 Minuten 84,1 MB wangshibo/myubuntu v1 6ce4aedd12cd vor 6 Minuten 84,1 MB docker.io/ubuntu 16.04 7aa3602ab41e vor 5 Wochen 115 MB Erneut pushen (Hinweis: Das v1-Tag unten kann weggelassen werden, die Standardeinstellung ist „latest“). Der Push-Vorgang dauert etwas lange. Bitte warten Sie geduldig. [root@docker-test1 ~]# docker push wangshibo/myubuntu:v1 Der Push verweist auf ein Repository [docker.io/wangshibo/myubuntu] b5948ba9486d: Geschoben 8d7ea83e3c62: Von Bibliothek/Ubuntu gemountet 6a061ee02432: Von Bibliothek/Ubuntu gemountet f73b2816c52a: Von Bibliothek/Ubuntu gemountet 6267b420796f: Von Bibliothek/Ubuntu gemountet a30b835850bf: Von Bibliothek/Ubuntu gemountet v1: Digest: sha256:e9cd9075d262848a307c92751e1a5890d883b814a31abd118161442461a1ca2d Größe: 1564 Melden Sie sich abschließend bei Ihrem Docker Hub an: https://hub.docker.com/ Nach dem Einloggen können Sie das Bild wangshibo/myubuntu:v1 sehen, das Sie oben in Repositories hochgeladen haben. Dies ist ein externes Bild und kann aus dem Internet heruntergeladen werden. Sie können den Download-Befehl für dieses Image auf dem Docker-Hub sehen (beachten Sie, dass Sie beim Herunterladen dem Tag folgen müssen. Wenn es sich um das Standard-Tag „latest“ handelt, können Sie es weglassen). Sie können dieses Image auch direkt im Docker-Hub löschen (Repositories-Image-Einstellungen-Löschen). Laden Sie beispielsweise dieses Image auf einen anderen Server herunter [root@kevin-test ~]# docker pull wangshibo/myubuntu Repository wangshibo/myubuntu abrufen Repository nicht gefunden Muss mit dem Tag [root@kevin-test ~]# docker pull wangshibo/myubuntu:v1 Schritt halten v1: Abrufen von Wangshibo/Myubuntu 68e2a091ef24: Ziehen abgeschlossen 8f9dd35f6299: Ziehen abgeschlossen a81a6171600b: Ziehen abgeschlossen a211a2bc7010: Ziehen abgeschlossen 9e71a0b4f83a: Ziehen abgeschlossen 0cf75bb335aa: Pull abgeschlossen c393a882769e: Ziehen abgeschlossen Zusammenfassung: sha256:845fa3dcc9d0de1b9c701e1009918995da35a29012015f6c297a05edc489e018 Status: Neueres Image für wangshibo/myubuntu:v1 heruntergeladen [root@kevin-test ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT VIRTUELLE GRÖSSE wangshibo/myubuntu v1 c393a882769e vor 12 Minuten 84,11 MB Löschen Sie dieses Image auf diesem Computer [root@docker-test1 ~]# Docker-Images REPOSITORY TAG BILD ID ERSTELLT GRÖSSE myubuntu v1 6ce4aedd12cd vor 15 Minuten 84,1 MB wangshibo/myubuntu v1 6ce4aedd12cd vor 15 Minuten 84,1 MB docker.io/ubuntu 16.04 7aa3602ab41e vor 5 Wochen 115 MB Beachten Sie, dass es oben zwei Image-IDs von 6ce4aedd12cd gibt. Sie können die Image-ID derzeit nicht direkt löschen, indem Sie sie verwenden [root@docker-test1 ~]# docker rmi 6ce4aedd12cd Fehlerantwort vom Daemon: Konflikt: 6ce4aedd12cd kann nicht gelöscht werden (muss erzwungen werden) – auf das Image wird in mehreren Repositories verwiesen Sie sollten das Image zunächst löschen, bevor der Docker-Tag umbenannt wird, und es unter Verwendung des Image-Namens löschen. (Im Allgemeinen ist es nach der Umbenennung des Docker-Tag-Images am besten, das Image vor der Namensänderung zu löschen.) [root@docker-test1 ~]# docker rmi myubuntu:v1 Ohne Tag: myubuntu:v1 Ohne Tag: wangshibo/myubuntu@sha256:e9cd9075d262848a307c92751e1a5890d883b814a31abd118161442461a1ca2d [root@docker-test1 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE wangshibo/myubuntu v1 6ce4aedd12cd vor 15 Minuten 84,1 MB docker.io/ubuntu 16.04 7aa3602ab41e vor 5 Wochen 115 MB Zu diesem Zeitpunkt können Sie die Image-ID [root@docker-test1 ~]# docker rmi 6ce4aedd12cd löschen. Ohne Tag: wangshibo/myubuntu:v1 Gelöscht: sha256:6ce4aedd12cda693d0bbb857cc443a56f9f569106e09ec61aa53563d0932ea4d Gelöscht: sha256:0ddeb6a16badd042914c2e72b9ef0331550c1cdcc4bdc6650a90cd9f57f1501b [root@docker-test1 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE docker.io/ubuntu 16.04 7aa3602ab41e vor 5 Wochen 115 MB Ein Beispiel für einen Fehler beim Löschen eines Bilds [root@docker-test1 ~]# docker ps CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN [root@docker-test1 ~]# docker ps -a CONTAINER ID BILD BEFEHL ERSTELLT STATUS PORTS NAMEN Ich möchte das Nginx-Image von Docker löschen, aber ich stelle fest, dass ich es nicht löschen kann. Ich kann es nicht löschen, indem ich -f hinzufüge. Es wird immer wieder der Fehler „Kein solches Image“ gemeldet. Endlich einen Weg gefunden, die Datei direkt zu löschen! [root@docker-test1 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE nginx latest 62f816a209e6 vor 7 Tagen 109MB [root@docker-test1 ~]# docker rmi nginx Fehler: Kein solches Bild: nginx [root@docker-test1 ~]# docker rmi 62f816a209e6 Fehler: Kein solches Bild: 62f816a209e6 [root@docker-test1 ~]# docker rmi 62f816a209e6 -f Fehler: Kein solches Bild: 62f816a209e6 Wie oben kann ich das Nginx-Image überhaupt nicht löschen!!!! Lösung: [root@docker-test1 ~]# systemctl stop docker [root@docker-test1 ~]# rm -rf /var/lib/docker rm: „/var/lib/docker/containers“ kann nicht entfernt werden: Gerät oder Ressource beschäftigt Der Grund, warum es nicht gelöscht werden kann, ist: Als der Container erstellt wurde, wurde das entsprechende Verzeichnis gemountet und nicht deinstalliert, sodass das Gerät oder die Ressource belegt ist Lösung: Suchen Sie das gemountete Verzeichnis und deinstallieren Sie [root@docker-test1 ~]# cat /proc/mounts | grep "docker" /dev/mapper/centos-root /var/lib/docker/containers xfs rw,relatime,attr2,inode64,noquota 0 0 proc /run/docker/netns/default proc rw,nosuid,nodev,noexec,relatime 0 0 proc /run/docker/netns/a0626c54fd03 proc rw,nosuid,nodev,noexec,relatime 0 0 proc /run/docker/netns/b18072de4224 proc rw,nosuid,nodev,noexec,relatime 0 0 proc /run/docker/netns/b5298f643455 proc rw,nosuid,nodev,noexec,relatime 0 0 proc /run/docker/netns/9f5e97637c98 proc rw,nosuid,nodev,noexec,relatime 0 0 [root@docker-test1 ~]# umount /var/lib/docker/containers [root@docker-test1 ~]# rm -rf /var/lib/docker [root@docker-test1 ~]# systemctl starte Docker Überprüfen Sie es noch einmal und es gibt kein solches Bild [root@docker-test1 ~]# Docker-Bilder REPOSITORY TAG BILD ID ERSTELLT GRÖSSE Oben sind die Details zum Senden von Bildern über DockerCommit und zum Pushen von Bildern über DockerPush aufgeführt. Weitere Informationen zum Senden von Containern und zum Pushen von Bildern finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
>>: So verwenden Sie die MySQL-Indexzusammenführung
Durchführung von Transaktionen Das Redo-Protokoll...
Beim Anmelden am Stresstest sind viele verschiede...
1: Nginx-Serverlösung, ändern Sie die .conf-Konfi...
verwenden Flexible Boxen spielen beim Front-End-L...
Inhaltsverzeichnis 1. Umweltinstallation 2. Erste...
Die ersten Computer konnten nur ASCII-Zeichen ver...
Vorwort: Im MySQL-System gibt es viele verschiede...
Teil 1 Übersicht über die SSH-Portweiterleitung H...
Flash-Dateiformate: .FLV und .SWF Für das Flash-Vi...
Inhaltsverzeichnis Vorwort Entdecken Sie die Ursa...
1. Typeinführung 1.1 Domänenbasiertes virtuelles ...
VMware-Workstations starten den virtuellen Maschi...
MySQL DDL-Anweisungen Was ist DDL, DML. DDL ist e...
Lassen Sie uns zunächst den Netzwerkeinstellungsm...
Der vollständige Name von Blog sollte Weblog sein,...