docker映象是由檔案系統疊加而成(是一種檔案的儲存形式)。最底端是乙個檔案引導系統,即bootfs,這很像典型的linux/unix的引導檔案系統。docker使用者幾乎永遠不會和引導系統有什麼互動。實際上,當乙個容器啟動後,它將會被移動到記憶體中,而引導檔案系統則會被解除安裝,以留出更多的記憶體供磁碟映象使用。docker容器啟動是需要的一些檔案,而這些檔案就可以稱為docker映象。
列出docker下的所有映象:docker images
l repository:映象所在的倉庫名稱
l tag:映象標籤
l image id:映象id
l created:映象的建立日期(不是獲取該映象的日期)
l size:映象大小
l 這些映象都是儲存在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 映象名稱
n name:倉庫名稱
n description:映象描述
n official:是否官方
automated:自動構建,表示該映象由docker hub自動構建流程建立的
docker映象首頁,包括官方映象和其它公開映象。docker hub上最受歡迎的10大映象(通過docker registry api獲取不了映象被pull的個數,只能通過映象的stars數量,來衡量映象的流行度。毫無疑問,擁有最高stars數量的庫都是官方庫)。
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是老牌的linux映象服務提供者了,還在遙遠的ubuntu 5.04版本的時候就在用。ustc的docker映象加速器速度很快。ustc docker mirror的優勢之一就是不需要註冊,是真正的公共服務。
步驟:
(2)在該檔案中輸入如下內容:
"registry-mirrors": [""]
(3)注意:一定要重啟docker服務,如果重啟docker後無法加速,可以重新啟動os
1、 docker rmi $image_id:刪除指定映象
2、 docker rmi `docker images -q`:刪除所有映象
docker 系列 Dock高階知識點文章匯集
書籍 docker 從入門到精通 這可能是最為詳細的docker入門 總結 麥子學院的教程 將 springboot 打包進 docker spring 官方的教程 docker 部署 springboot 專案整合 redis 映象做訪問計數demo docker 容器使用者管理 預設情況下,容器...
docker系列教程之docker安裝
2013年發布至今,docker 一直廣受矚目,被認為可能會改變軟體行業。一 環境配置的難題 軟體開發最大的麻煩事之一,就是環境配置。使用者計算機的環境都不相同,你怎麼知道自家的軟體,能在那些機器跑起來?使用者必須保證兩件事 作業系統的設定,各種庫和元件的安裝。只有它們都正確,軟體才能執行。舉例來說...
Docker系列之(一) 10分鐘玩轉Docker
進入雲計算的時代,各大雲提供商aws,阿里雲紛紛推出針對docker的服務,現在docker是十分火爆,那麼docker到底是什麼,讓我們來體驗一下。docker是乙個開源的應用容器引擎,可以把應用以及依賴包放到乙個可移植的容器中,然後發布到任何流行的 linux 系統上,通過這種方式實現虛擬化。提...