跟我一起學docker(三)--鏡像的基本操作
1.獲取鏡像:
命令:
docker pull <域名>//:
說明:
鏡像是Docker運行容器的前提。
用戶可以使用docker pull 命令從網路上下載鏡像。對於鏡像來說,如果不顯式地指定tag,則默認會選擇latest標籤,即下載倉庫中最新版本的鏡像。
默認是從docker官方下載的。只有docker官方的可以不需要增加命名空間直接進行下載。
2.查看鏡像列表
命令:
docker images
說明:
使用docker images命令可以列出本地主機上已有的鏡像。
信息含義:來自於哪個倉庫、鏡像的標籤信息、鏡像的ID號(唯一)、創建時間、鏡像大小。
3.查看鏡像信息
命令:
docker inspect
說明:
docker inspect命令返回的是一個JSON的格式消息,如果我們只要其中的一項內容時,可以通過-f參數來指定。Image_id通常可以使用該鏡像ID的前若干個字元組成的可區分字元串來替代完成的ID。
查看鏡像的某一個詳細信息
4.查找鏡像
命令:
docker search
說明:
使用docker search命令可以搜索遠端倉庫中共享的鏡像,默認搜索Docker hub官方倉庫中的鏡像。
5.刪除鏡像
命令:
說明:
使用docker rmi命令可以刪除鏡像,其中image可以為標籤或ID。
注意:
當同一個鏡像擁有多個標籤,docker rmi只是刪除該鏡像多個標籤中的指定標籤而已,而不影響鏡像文件。
當有該鏡像創建的容器存在時,鏡像文件默認是無法被刪除的。
如果一個鏡像就有一個tag的話,刪除tag就刪除了鏡像的本身。
一個鏡像做一個tag
執行刪除tag操作
刪除鏡像操作
重新下載鏡像,方便下一步關於鏡像和容器的關係演示
如果鏡像裡面有容器正在運行,刪除鏡像的話,會提示error,系統默認是不允許刪除的,如果強制刪除需要加入-f操作,但是docker是不建議這麼操作的,因為你刪除了鏡像其實容器並未刪除,直接導致容器找不到鏡像,這樣會比較混亂。
運行一個鏡像裡面的容器
查看運行中的容器
刪除鏡像,報錯誤error,有一個容器正在這個鏡像內運行
強制刪除
已經找不到鏡像,刪除鏡像未刪除容器的後果
6.創建鏡像
命令:
docker commit
參數說明:
-a , --author : 作者信息
-m , --meassage : 提交消息
-p , --pause=true : 提交時暫停容器運行
說明:
基於已有的鏡像的容器的創建。再次下載ubuntu,以ubuntu為例子創建
運行ubuntu,-ti把容器內標準綁定到終端並運行bash,這樣開跟傳統的linux操作系統沒什麼兩樣,現在我們直接在容器內運行。這個內部系統都是極簡的只保留我們的一些系統的運行參數,裡面很多vi命令可能都是沒有的。
退出容器exit
容器創建成鏡像的方法:
通過某個容器d1d6706627f1 創建對應的鏡像,有點類似git
發現通過docker images 裡面多了一個鏡像
liming/test的倉庫
7.遷出鏡像
命令:docker save
參數說明:
-o:設置存儲壓縮後的文件名稱
說明:
可以使用docker save命令來遷出鏡像,其中image可以為標籤或ID。
8.載入鏡像
命令:
說明:
使用docker load命令可以載入鏡像,其中image可以為標籤或ID。這將導入鏡像及相關的元數據信息(包括標籤等),可以使用docker images命令進行查看。我們先刪除原有的liming/test鏡像,執行查看鏡像,然後在導入鏡像
為了確定導入的鏡像是否是原來刪除的那個鏡像,我們進入鏡像,查看下text.txt
是我們輸入的idig88這個內容
可能這個鏡像的名字不符合docker的要求因為都是,重新命名一下
9.上傳鏡像
命令:
docker push <域名>//:
說明:
可以使用docker push命令上傳鏡像到倉庫,默認上傳到DockerHub官方倉庫(需要登錄)。
開始提示我許可權不足,因為我沒有登錄。
登錄之後提示
登錄後刪除還是許可權不足
因為我們liming這個名字跟官網的zhugeaming名字不一致我修改下在試試
開始上傳了
去官網看看是否上傳成功
往期docker學習:
認識docker
核心概念和安裝
推薦閱讀:
TAG:Docker | DockerCompose | 容器雲 |