(對docker感興趣的朋友可以加我的微信ghostcloud2016,然後我把你加到我們的一個docker愛好者群組裡面。)
到目前為止,我們已經學習了docker的基本用法,包括拉取鏡像,運作容器,編譯鏡像檔案等等。接下來,我們将學習如何通過docker hub來簡化你的操作,并提高你的工作效率。 docker hub是docker的主倉庫,由docker公司進行維護。這個倉庫裡面包含了系統的官方鏡像,同時提供簡單的使用者認證資訊,以及其他的附屬功能。預設情況下,這個倉庫是免費的,但是你的所有鏡像也是公開的。跟github類似,如果你需要一個私有的倉庫,那麼需要付費。
docker 本身和倉庫相關的指令包括docker search, pull, login, push。下面我們将詳細介紹這些指令的用法。
如果你沒有docker hub賬号,你可以從https://hub.docker.com進行注冊。注冊成功後,通過下面指令進行登入:
這個指令将提示你輸入使用者名和密碼。你的使用者資訊将被紀錄在~/.docker/config.json檔案中。
你可以在docker hub首頁上搜尋鏡像,不過我一般喜歡在指令行中進行搜尋。
上面查找出了兩個鏡像,第一個是centos,這個是官方鏡像,沒有任何字首; tianon/centos 是tianon使用者自己的centos,從這而你也可以看出,使用者的鏡像預設是公開的。 當你找到鏡像以後,你可以執行docker pull :
執行完畢後,centos鏡像就被拉取到本地了。
使用docker pull centos 等同于docker pull centos:latest。如果想下載下傳其他版本的鏡像,可以指定相應的tag,比如:docker pull centos:centos5。
每個人都可以将公共的鏡像送出到docker hub registry,隻是這個是公共的倉庫。
如果你要推送鏡像到docker hub,你需要一個命名的image。其格式如下:
如果你的鏡像是自己建構的,你需要用docker tag來進行标記後,再進行送出。如果你想送出容器,就需要先docker commit成鏡像,再送出。