docker中的鏡像
docker的最簡單的使用方式莫過於從已有的容器鏡像開始,不再萬丈高樓平地起,而是可以千丈起。docker官網有一個用來專門存儲可用鏡像的網站。讀者可以這樣理解,鏡像實際就是一個只讀的模板,由json文件描述。例如:一個鏡像可以包含一個完整的 ubuntu 操作系統環境,裏面僅安裝了 Apache 或用戶需要的其它應用程序。
從整體的角度來講,一個完整的Docker鏡像可以支撐一個Docker容器的運行,在 Docker容器運行過程中主要提供文件系統視角。例如一個ubuntu:14.04的鏡像,提供了一個基本的ubuntu:14.04的發行版,當然此 鏡像是不包含操作系統Linux內核的。
Docker鏡像的內容主要包含兩個部分:第一,鏡像層文件內容;第二,鏡像json文件。
當我們安裝完docker後,通常使用hello-world
來測試。
$ docker run hello-world
可以這麼理解這個命令:
運行命令後,如得到如下結果,則表明安裝成功
root@mingchen-HP:~# docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from hello-world
264eca88cf85: Pull complete
f0cb9bdcaa69: Pull complete
Digest: sha256:548e9719abe62684ac7f01eea38cb5b0cf467cfe67c58b83fe87ba96674a4cdd
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
獲取鏡像
首先打開瀏覽器從docker hub尋找目標鏡像,接着在終端運行命令下載,最後使用鏡像
以whalesay鏡像爲例,從docker hub搜尋:
會發現有很多鏡像,這些鏡像包括官方的、民間的各路開發者的貢獻鏡像,選擇我們需要的即可,這裏我們選擇官方的,把”All” 換成 “Downloads”(下載量最大)即可。選擇截圖中的第一個鏡像,“>details“,docker/whalesay, 可以查看我們能夠看到這個鏡像文件的詳
細描述,用法,部分用戶對這個鏡像的評論及改版。
從docker hub 獲取鏡像,可以使用docker pull
或docker run
(若之前沒下載過目標鏡像,run命令實際包含了pull,從截圖可以看出,pull完之後再run鏡像)
pull完之後再自動run鏡像:
改變cosay命令後面的字符,得到不同的輸出:
查看鏡像
使用docker images
命令查看已存在的鏡像文件
從列出的字段可以看出鏡像的如下信息:
- 來自於哪個倉庫,比如 ubuntu
- 鏡像的標記,比如 14.04
- 它的 ID 號(唯一)。ID其實很長,途中只是前一些位
- 列表內容
- 創建時間
- 鏡像大小
創建鏡像
查看筆者的下一篇的博客
移除鏡像
如果要刪除本地鏡像,則使用docker rmi
命令,注意區分 docker rm
命令是刪除本地容器的命令.若有容器正在運行這個鏡像,則需要使用強制刪除命令,docker rmi -f
以上截圖爲移除hello-world
鏡像