1. 程式人生 > >Docker中如何刪除image(映象)

Docker中如何刪除image(映象)

原文地址:http://yaxin-cn.github.io/Docker/how-to-delete-a-docker-image.html

docker中刪除images的命令是docker rmi,但有時候執行此命令並不能刪除images

[[email protected] ~]$docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
eg_sshd             latest              ed9c93747fe1        45
hours ago 329.8 MB CentOS65 latest e55a74a32125 2 days ago 360.6 MB [[email protected] ~]$docker rmi ed9c93747fe1 Untagged: ed9c93747fe16627be822ad3f7feeb8b4468200e5357877d3046aa83cc44c6af [[email protected] ~]$docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE <none> <none> ed9c93747fe1 45
hours ago 329.8 MB CentOS65 latest e55a74a32125 2 days ago 360.6 MB

可以看出,image並沒有被刪除,只是他的tag被刪除了,再次執行docker rmi IMAGE_ID只會報錯

[[email protected] ~]$docker rmi ed9c93747fe1
Error: image_delete: Conflict, ed9c93747fe1 wasn't deleted
2014/03/22 15:58:27 Error: failed to remove one or more images

檢視docker的幫助會發現有兩個與刪除有關的命令rmrmi

rm Remove one or more containers
rmi Remove one or more images

這裡有兩個不同的單詞,imagescontainer。其中images很好理解,跟平常使用的虛擬機器的映象一個意思,相當於一個模版,而container則是images執行時的的狀態。docker對於執行過的image都保留一個狀態(container),可以使用命令docker ps來檢視正在執行的container,對於已經退出的container,則可以使用docker ps -a來檢視。 如果你退出了一個container而忘記儲存其中的資料,你可以使用docker ps -a來找到對應的執行過的container使用docker commit命令將其儲存為image然後執行。

回到之前的問題,由於image被某個container引用(拿來執行),如果不將這個引用的container銷燬(刪除),那image肯定是不能被刪除。

所以想要刪除執行過的images必須首先刪除它的container。繼續來看剛才的例子,

[[email protected] ~]$docker ps -a
CONTAINER ID        IMAGE               COMMAND                CREATED             STATUS              PORTS                   NAMES
117843ade696        ed9c93747fe1        /bin/sh -c /usr/sbin   46 hours ago        Up 46 hours         0.0.0.0:49153->22/tcp   test_sshd

可以看出ed9c93747fe1的image被117843ade696的container使用著,所以必須首先刪除該container

[[email protected] ~]$docker rm 117843ade696
Error: container_delete: Impossible to remove a running container, please stop it first
2014/03/22 16:36:44 Error: failed to remove one or more containers

出現錯誤,這是因為該container正在執行中(執行docker ps檢視),先將其關閉

[[email protected] ~]$docker stop 117843ade696
117843ade696
[[email protected] ~]$docker rm 117843ade696
117843ade696
[[email protected] ~]$docker rmi ed9c93747fe1
Deleted: ed9c93747fe16627be822ad3f7feeb8b4468200e5357877d3046aa83cc44c6af
Deleted: c8a0c19429daf73074040a14e527ad5734e70363c644f18c6815388b63eedc9b
Deleted: 95dba4c468f0e53e5f1e5d76b8581d6740aab9f59141f783f8e263ccd7cf2a8e
Deleted: c25dc743e40af6858c34375d450851bd606a70ace5d04e231a7fcc6d2ea23cc1
Deleted: 20562f5714a5ce764845119399ef75e652e23135cd5c54265ff8218b61ccbd33
Deleted: c8af1dc23af7a7aea0c25ba9b28bdee68caa8866f056e4f2aa2a5fa1bcb12693
Deleted: 38fdb2c5432e08ec6121f8dbb17e1fde17d5db4c1f149a9b702785dbf7b0f3be
Deleted: 79ca14274c80ac1df1333b89b2a41c0e0e3b91cd1b267b31bef852ceab3b2044
[[email protected] ~]$docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
CentOS65            latest              e55a74a32125        2 days ago          360.6 MB

可以看出,image已經被刪除。

相關推薦

Docker如何刪除image映象

原文地址:http://yaxin-cn.github.io/Docker/how-to-delete-a-docker-image.htmldocker中刪除images的命令是docker rmi,但有時候執行此命令並不能刪除images[[email protected] ~]$docker

Docker-Image映象的獲取/常用命令/簡單的映象製作

1:獲取想要的映象 方法一: 1:訪問Docker Hub可以獲取需要的映象 :https://hub.docker.com 2:點選Explore可以在頁面選擇需要的映象,我們以node為例 需要改映象 我們只需用點選箭頭所示進入頁面 3:進入頁面後 我們可以在輸入紅框

Docker如何刪除image鏡像

git commit tag style delet 有關 發現 post 不同 原文地址:http://yaxin-cn.github.io/Docker/how-to-delete-a-docker-image.html docker中刪除

Windows10下的docker安裝與入門 建立自己的docker映象並且在容器執行它

Docker 是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的 Linux 機器上,也可以實現虛擬化。容器是完全使用沙箱機制,相互之間不會有任何介面。 本教程主要分以下幾點內容:  ------------

『中級篇』Docker Cloud自動構建 Docker image55

dbd ngs 授權 分支 命令 執行 view 9.png aaa >原創文章,歡迎轉載。轉載請註明:轉載自IT人故事會,謝謝!>原文鏈接地址:『中級篇』Docker Cloud自動構建 Docker image(55) 一步一步的接近下面這個圖,來通過時間的

linux 部署docker容器虛擬化平臺--------docker 映象製作方法

Docker Image 的製作兩種方法 方法 1:docker commit #儲存 container 的弼前狀態到 image 後,然後生成對應的 image 方法 2:docker build #使用 Dockerfile 檔案自動化製作 image 一、. 語法: docke

EmguCV Image的函式

轉載自http://blog.csdn.net/qq_22033759/article/details/47807553 1、Image<TColor, TDepth> AbsDiff     返回兩幅圖片或此圖與某個yanse畫素的差的絕對值的圖片 2

List集合刪除屬性一個或者多個屬性相同的物件返回List且根據物件屬性進行排序輸出

    在資料庫中某些資料是重複的,通過mybatis對映成不同的物件。導致不同的物件包含相同的屬性。這也是資料重複的一種。下面是我在處理一個屬性或者多個屬性相同時採用的方法。當然你可以採用其他的方法。比較蠢的方法是兩個for迴圈。但是對於資料的刪除是很容易出現異常的。因此我

Docker學習之路用commit命令建立映象

構建映象 構建映象的兩種方法: 使用docker commit 命令使用docker build命令和Dockerfile檔案 Dockerfile更搶到、靈活,推薦使用。 一般來說不是真的“建立”新映象,而是基於一個已有的基礎映象,比如Ubuntu、Fedora等,

Docker踩坑筆記[二]:Docker使用MySQL基於CentOS7

Docker之MySQL的使用 拉取Mysql映象 docker中國加速:docker pull registry.docker-cn.com/library/ docke-hub地址:https://hub.docker.com/r/_/mysql/ 檢視TAG

在salesforce如何利用data loader匯入資料和刪除資料mac

使用mac的小夥伴在為sf的物件匯入資料記錄和匯出並刪除記錄時,一定遇到了很多麻煩,總結有兩點: 1.匯入的資料格式出現問題; 2.不知道如何使用data loader刪除資料。 現提供一下解決方案: 問題1解決方案:使用excel編輯好資料記錄後,儲存為csv格式資料,然

Docker 入門實戰二映象與Dockerfile

什麼是映象? 映象是用於建立容器的只讀模板 映象是通過Docker build命令建立 映象由映象層構成 映象儲存於Docker Registry 映象命令 1 docker images :列出本地映象 docker images

影象處理媲美matlab的python包——scikit-imageskimage包的用法詳解

前言: 基於python的圖片處理包還是很多的,比如PIL,Pillow, opencv, scikit-image等。其中,PIL和Pillow只提供最基礎的數字影象處理,功能有限;opencv本質上是一個c++庫,只是提供了python的介面,官方更新速度

ubuntu 16.0.4 docker 部署 sqlserver 2017

1、 從 Docker Hub 中拉出 SQL Server 2017 Linux 容器映像 $ sudo docker pull microsoft/mssql-server-linux:2017-latest 2、顯示所有可用的映象 $ docker images 3、執行一個

EmguCV Image的函式使用MorphologyEx進行更多的變換

MorphologyEx中所有的變換如下圖所示 呼叫方法: Mat aaa = CvInvoke.GetStructuringElement(Emgu.CV.CvEnum.ElementShape

docker:二、1安裝docker-compose並統一拉取映象

安裝docker-compose方法:#curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname-s`-`uname -m` > /usr/local/bin/docker-comp

資料結構——演算法之022 在字串刪除特定的字元

【申明:本文僅限於自我歸納總結和相互交流,有紕漏還望各位指出。 聯絡郵箱:[email protected]】 題目: 輸入兩個字串,從第一字串中刪除第二個字串中所有的字元。例如,輸入”They are students.”和”aeiou”, 則刪除之後的第

【LeetCode-面試演算法經典-Java實現】【083-Remove Duplicates from Sorted List排序的單鏈表刪除重複的結點

原題   Given a sorted linked list, delete all duplicates such that each element appear only on

Docker快速入門系列——Docker常用命令之映象命令

                                             《 Docker常用命令之映象命令 》 前言 在前面的文章中進行了Docker的安裝和配置,在接下來的文章中將對 Docker 的常用命令進行介紹,本篇先從最基本的 “

Docker快速入門系列——Docker映象基本理論概述

                                                    《 Docker映象基本理論概述 》 前言 在前面進行了docker相關的常用命令進行了詳細的介紹,接下來將進入Docker的映象操作篇,通過本篇部落格的學