[Docer]docker鏡像操作

什麼是Docker鏡像

Docker鏡像是由文件系統疊加而成(是一種文件的存儲形式)。最底端是一個文件引導系統,即bootfs,這很像典型的Linux/Unix的引導文件系統。Docker用戶幾乎永遠不會和引導系統有什麼交互。實際上,當一個容器啓動後,它將會被移動到內存中,而引導文件系統則會被卸載,以留出更多的內存供磁盤鏡像使用。Docker容器啓動是需要的一些文件,而這些文件就可以稱爲Docker鏡像。

在這裏插入圖片描述

列出鏡像
列出docker下的所有鏡像:docker images

在這裏插入圖片描述

  • REPOSITORY:鏡像所在的倉庫名稱 
  • TAG:鏡像標籤 
  • IMAGE ID:鏡像ID
  • CREATED:鏡像的創建日期(不是獲取該鏡像的日期) 
  • SIZE:鏡像大小
  • 這些鏡像都是存儲在Docker宿主機的/var/lib/docker目錄下

在這裏插入圖片描述

 爲了區分同一個倉庫下的不同鏡像,Docker提供了一種稱爲標籤(Tag)的功能。每個鏡像在列出來時都帶有一個標籤,例如12.10、12.04等等。每個標籤對組成特定鏡像的一些鏡像層進行標記(比如,標籤12.04就是對所有Ubuntu12.04鏡像層的標記)。這種機制使得同一個倉庫中可以存儲多個鏡像。--- 版本號
 我們在運行同一個倉庫中的不同鏡像時,可以通過在倉庫名後面加上一個冒號和標籤名來指定該倉庫中的某一具體的鏡像,例如docker run --name custom_container_name –i –t docker.io/ubunto:12.04 /bin/bash,表明從鏡像Ubuntu:12.04啓動一個容器,而這個鏡像的操作系統就是Ubuntu:12.04。在構建容器時指定倉庫的標籤也是一個好習慣。

搜索鏡像
如果你需要從網絡中查找需要的鏡像,可以通過以下命令搜索

docker search 鏡像名稱

在這裏插入圖片描述

  • NAME:倉庫名稱

  • DESCRIPTION:鏡像描述

  • STARS:用戶評價,反應一個鏡像的受歡迎程度

  • OFFICIAL:是否官方
    AUTOMATED:自動構建,表示該鏡像由Docker Hub自動構建流程創建的
    拉取鏡像

    從Docker Hub拉取

Docker鏡像首頁,包括官方鏡像和其它公開鏡像。Docker Hub上最受歡迎的10大鏡像(通過Docker registry
API獲取不了鏡像被pull的個數,只能通過鏡像的stars數量,來衡量鏡像的流行度。毫無疑問,擁有最高stars數量的庫都是官方庫)。

在這裏插入圖片描述

國情的原因,國內下載 Docker HUB
官方的相關鏡像比較慢,可以使用國內(docker.io)的一些鏡像加速器,鏡像保持和官方一致,關鍵是速度塊,推薦使用。Mirror與Private
Registry的區別: Private Registry(私有倉庫)是開發者或者企業自建的鏡像存儲庫,通常用來保存企業內部的 Docker
鏡像,用於內部開發流程和產品的發佈、版本控制。
Mirror是一種代理中轉服務,我們(比如daocloud)提供的Mirror服務,直接對接Docker
Hub的官方Registry。Docker Hub 上有數以十萬計的各類 Docker 鏡像。 在使用Private
Registry時,需要在Docker Pull 或Dockerfile中直接鍵入Private Registry 的地址,通常這樣會導致與
Private Registry 的綁定,缺乏靈活性。 使用 Mirror 服務,只需要在 Docker
守護進程(Daemon)的配置文件中加入 Mirror 參數,即可在全局範圍內透明的訪問官方的 Docker Hub,避免了對
Dockerfile 鏡像引用來源的修改。 簡單來說,Mirror類似CDN,本質是官方的cache;Private
Registry類似私服,跟官方沒什麼關係。對用戶來說,由於用戶是要拖docker
hub上的image,對應的是Mirror。yum/apt-get的Mirror又有點不一樣,它其實是把官方的庫文件整個拖到自己的服務器上做鏡像,並定時與官方做同步;而Docker
Mirror只會緩存曾經使用過的image。

使用命令拉取:

docker pull centos:7

目前國內訪問docker hub速度上有點尷尬,使用docker Mirror勢在必行。現有國內提供docker鏡像加速服務的商家有不少,下面重點ustc鏡像。

ustc的鏡像
ustc是老牌的linux鏡像服務提供者了,還在遙遠的ubuntu 5.04版本的時候就在用。ustc的docker鏡像加速器速度很快。ustc docker mirror的優勢之一就是不需要註冊,是真正的公共服務。
https://lug.ustc.edu.cn/wiki/mirrors/help/docker
步驟:
(1)編輯該文件:vi /etc/docker/daemon.json // 如果該文件不存在就手動創建;說明:在centos7.x下,通過vi。
在這裏插入圖片描述

(2)在該文件中輸入如下內容:

{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}

(3)注意:一定要重啓docker服務,如果重啓docker後無法加速,可以重新啓動OS
在這裏插入圖片描述

然後通過docker pull命令下載鏡像:速度槓槓的。

刪除鏡像

1、docker rmi $IMAGE_ID:刪除指定鏡像
2、docker rmi docker images -q:刪除所有鏡像

在這裏插入圖片描述

快去試試吧~~~~~~~~~~~~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章