Ich möchte den Container bei Docker entfernen, aber beim Löschen tritt ein Fehler auf
Mein nächster Schritt vor dem Entfernen des Containers ist die Liste der vorhandenen Container
sts@Yudi:~/docker$ sudo docker ps -as
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
78479ffeba5c ubuntu "/bin/bash" 42 hours ago Exited (0) 42 hours ago sharp_wescoff 81 B (virtual 187.7 MB)
0bd2b54678c7 training/webapp "python app.py" 5 days ago Exited (0) 5 days ago backstabbing_ritchie 0 B (virtual 323.7 MB)
0adbc74a3803 training/webapp "python app.py" 5 days ago Exited (143) 5 days ago drunk_feynman 0 B (virtual 323.7 MB)
Ich möchte die Liste löschen, nämlich "training / webapp", aber ein Fehler ist aufgetreten
sts@Yudi:~/docker$ sudo docker rmi training/webapp
Error response from daemon: conflict: unable to remove repository reference "training/webapp" (must force) - container 0bd2b54678c7 is using its referenced image 54bb4e8718e8
Error: failed to remove images: [training/webapp]
Ob der Container in den Bildern läuft?
Bitte helfen Sie
docker
containers
Yuday
quelle
quelle
Antworten:
Es gibt einen Unterschied zwischen Docker-Images und Docker-Containern. Überprüfen Sie diese SO-Frage .
Kurz gesagt, ein Container ist eine laufende Instanz eines Bildes. Aus diesem Grund können Sie ein Bild nicht löschen, wenn ein Container aus diesem Bild ausgeführt wird. Sie müssen nur zuerst den Container löschen.
Update für Docker 1.13+ [Seit Januar 2017]
Grundsätzlich könnten die obigen Befehle auch klarer umgeschrieben werden als:
Wenn Sie ALLES entfernen möchten, können Sie Folgendes verwenden:
quelle
docker rmi -f id
das Entfernen "erzwingen".-f
hilft, wenn Sie ein Bild entfernen möchten, auf das in mehreren Repositorys verwiesen wird. Dies ist ein weiterer häufiger Grund dafür, dass ein Bild nicht entfernt werden kann.docker container ls
nur laufende Container aufgelistet werden. Das hat mich durcheinander gebracht, bis mir klar wurde, dass das Hinzufügen der-a
Flagge alle auflistet.Entfernen Sie zuerst die Containernamen
Das Ergebnis
Löschen Sie den zweiten Teil, der auf dem zu löschenden Container aufgeführt ist
Zweitens entfernen Sie den Behälter
Das Ergebnis
Überprüfen Sie den Kontinent
quelle
rm `docker ps -aq`
für die Bereinigung in Betracht ziehen , anstatt sie einzeln zu entfernen. Weitere Informationen hierWenn Sie Docker-Images und -Container bereinigen möchten
VORSICHT: Dadurch wird alles gespült
Stoppen Sie alle Container
Entfernen Sie alle Behälter
Entfernen Sie alle Bilder
quelle
docker rm $(docker ps -a -q)
. Vielen Dank!Mit der
-f
Option können Sie das Löschen der Container erzwingen.sudo docker rmi -f training/webapp
Sie können die Verwendung der Container
sudo docker stop training/webapp
vor dem Löschen stoppenquelle
sudo docker stop 0bd2b54678c7
Wenn Sie mehrere Docker-Container gestartet haben, verwenden Sie diese Option
$ docker rm $(docker ps -aq)
Es werden alle aktuellen Docker entfernt, die im Befehl "ps -aq" aufgeführt sind.
Quelle: aaam unter https://github.com/docker/docker/issues/12487
quelle
docker image ls
und dann,docker image rm X
wo jedes X von derls
Ausgabe erhalten wurde.Es wurde festgestellt, dass dies eine 2 Jahre alte Frage ist, aber ich möchte trotzdem meine Problemumgehung für diese spezielle Frage teilen:
Führen Sie
docker container ls -a
zunächst alle Container aus, die Sie haben, und bestimmen Sie den gewünschten Löschpunkt.Zweitens löschen Sie den Befehl mit
docker container rm <CONTAINER ID>
(Wenn der Container gerade ausgeführt wird, sollten Sie ihn zuerst stoppen und ausführendocker container stop <CONTAINER ID>
, um den angegebenen Container ordnungsgemäß zu stoppen. Wenn er aus irgendeinem Grund nicht gestoppt wird, können Sie ihn alternativ ausführen.docker container kill <CONTAINER ID> to force shutdown of the specified container
)Drittens entfernen Sie den Container durch Ausführen
docker container rm <CONTAINER ID>
.Zuletzt können Sie ausführen
docker image ls -a
, um alle Bilder anzuzeigen und die gewünschten Bilder durch Ausführen zu löschendocker image rm <hash>
.quelle
Docker-Images entfernen>
Listen Sie alle Container auf
Listen Sie alle Bilder auf
Stoppen Sie Container für Container-ID
Container nach Container-ID entfernen
Wenn Sie nicht anhalten und entfernen möchten, können Sie das Entfernen erzwingen
Entferne Bild
Getan!
quelle
Listen Sie alle Ihre Docker-Bilder auf:
Alle vorhandenen Docker-Container auflisten:
Löschen Sie alle Zielcontainer, die das zu löschende Bild verwenden:
Löschen Sie das Zielbild:
quelle
Entfernen Sie nur die Container, die einem bestimmten Image zugeordnet sind
quelle