緊接著之前的部落格,這一篇主要寫如何使用docker
系列1:docker簡介:http://blog.csdn.net/u013469562/article/details/72864323
系列2: docker安裝:http://blog.csdn.net/u013469562/article/details/72865167
一、docker鏡像的擷取 1.1搜尋可用鏡像 docker的官方提供了一個官方的鏡像市場https://hub.docker.com/,可以搜尋一些鏡像檔案,比如centos,jdk等
當然我們一般都不會使用這種方式來擷取一把都是通過命令列首先用 docker search [keyword]命令查看Docker Hub上都有哪些鏡像可以下載,search後可以用萬用字元表示關鍵字:
1.2下載鏡像 這裡可以看出有很多個版本的centos,這裡的每個centos都是一個鏡像,可以選擇合適版本的centos下載。接下來用 docker pull [repository/url:tag]命令下載鏡像。因為從官方Docker Hub下載非常慢,所以這裡從國內的鏡像站網易的蜂巢(或者https://hub.daocloud.io/)https://c.163.com/hub 下載其中也可以在網頁上搜尋,速度非常快。(註:後面會講到用docker run命令建立容器,其實如果鏡像不存在Docker會自動去下載,這裡為了學習pull命令所以手動下載鏡像) 網易很貼心的幫你把docker的命令都寫上了: docker pull hub.c.163.com/public/centos:6.7-tools,如圖的右側
其中 docker pull hub.c.163.com/public/centos:6.7-tools 這行命令中前置的docker pull 是固定的,如果後面直接跟上鏡像的全名就是直接從官方的倉庫中下載,下圖中紅線的部分是鏡像的全名,其實還可以跟上tag代表下載不同的版本比如 docker pull hub.c.163.com/public/centos:6.7-tools:latest 表示下載最新版本,其中版本可以在倉庫中查詢找到具體的版本。比如想要查看centos6.5可以使用docker search centos:6.5
下載完成後,就可以用docker images查看本地都有哪些鏡像,下圖可以看 出已經出現了剛剛下載的鏡像。
這裡的REPOSITORY列可能有三種類型: [namespace/centos]:當你在Docker Hub上註冊賬戶時,賬戶名就自動成為你的namespace,它是用來區分不同使用者的鏡像的。 [centos]:這種只有倉庫名的可以認為它屬於頂級namespace,這種倉庫只用於官方的鏡像。 [hub.c.163.com/public/centos:6.7-tools]:URL路徑表示鏡像是放置在第三方搭建的Hub上。 1.3建立和啟動容器
瞭解了鏡像的基本操作後,我們就可以建立容器了。首先用docker create建立容器或者用docker run [repository:tag]建立並運行容器。容器可以分為兩種類型: 互動型容器:前台運行,可以通過控制台與容器互動。如果建立該容器的終端被關閉,則容器就變為停止狀態。此外,在容器控制台中輸入exit或者通過docker stop或docker kill也能終止容器。 後台型容器:後台運行,建立啟動之後就與終端無關了,需要用docker stop或docker kill來終止。 首先我們建立運行一個互動型容器試試,在容器的控制台裡簡單的輸出個”Hello,World”,可以看出啟動速度非常的快。用 docker ps可以查看正在啟動並執行容器,用 docker ps -a查看所有容器,包括未啟動的容器。(-l和-n=x能列出最後建立的一個或x個容器)