學習完整課程請移步 互聯(lián)網(wǎng) Java 全棧工程師
目前 Docker 官方維護了一個公共倉庫 Docker Hub栅迄,其中已經(jīng)包括了數(shù)量超過 15,000 的鏡像。大部分需求都可以通過在 Docker Hub 中直接下載鏡像來實現(xiàn)皆怕。
注冊
你可以在 https://cloud.docker.com 免費注冊一個 Docker 賬號毅舆。
登錄
可以通過執(zhí)行 docker login
命令交互式的輸入用戶名及密碼來完成在命令行界面登錄 Docker Hub。
你可以通過 docker logout
退出登錄愈腾。
拉取鏡像
你可以通過 docker search
命令來查找官方倉庫中的鏡像憋活,并利用 docker pull
命令來將它下載到本地。
例如以 centos
為關鍵詞進行搜索:
$ docker search centos
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
centos The official build of CentOS. 465 [OK]
tianon/centos CentOS 5 and 6, created using rinse instea... 28
blalor/centos Bare-bones base CentOS 6.5 image 6 [OK]
saltstack/centos-6-minimal 6 [OK]
tutum/centos-6.4 DEPRECATED. Use tutum/centos:6.4 instead. ... 5 [OK]
可以看到返回了很多包含關鍵字的鏡像顶滩,其中包括鏡像名字余掖、描述寸爆、收藏數(shù)(表示該鏡像的受關注程度)礁鲁、是否官方創(chuàng)建、是否自動創(chuàng)建赁豆。
官方的鏡像說明是官方項目組創(chuàng)建和維護的仅醇,automated 資源允許用戶驗證鏡像的來源和內(nèi)容。
根據(jù)是否是官方提供魔种,可將鏡像資源分為兩類析二。
一種是類似 centos
這樣的鏡像,被稱為基礎鏡像或根鏡像节预。這些基礎鏡像由 Docker 公司創(chuàng)建叶摄、驗證、支持安拟、提供蛤吓。這樣的鏡像往往使用單個單詞作為名字。
還有一種類型糠赦,比如 tianon/centos
鏡像会傲,它是由 Docker 的用戶創(chuàng)建并維護的锅棕,往往帶有用戶名稱前綴√噬剑可以通過前綴 username/
來指定使用某個用戶提供的鏡像裸燎,比如 tianon 用戶。
另外泼疑,在查找的時候通過 --filter=stars=N
參數(shù)可以指定僅顯示收藏數(shù)量為 N
以上的鏡像德绿。
下載官方 centos
鏡像到本地。
$ docker pull centos
Pulling repository centos
0b443ba03958: Download complete
539c0211cd76: Download complete
511136ea3c5a: Download complete
7064731afe90: Download complete
推送鏡像
用戶也可以在登錄后通過 docker push
命令來將自己的鏡像推送到 Docker Hub退渗。
以下命令中的 username
請?zhí)鎿Q為你的 Docker 賬號用戶名脆炎。
$ docker tag ubuntu:17.10 username/ubuntu:17.10
$ docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu 17.10 275d79972a86 6 days ago 94.6MB
username/ubuntu 17.10 275d79972a86 6 days ago 94.6MB
$ docker push username/ubuntu:17.10
$ docker search username
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
username/ubuntu
自動創(chuàng)建
自動創(chuàng)建(Automated Builds)功能對于需要經(jīng)常升級鏡像內(nèi)程序來說,十分方便氓辣。
有時候秒裕,用戶創(chuàng)建了鏡像,安裝了某個軟件钞啸,如果軟件發(fā)布新版本則需要手動更新鏡像几蜻。
而自動創(chuàng)建允許用戶通過 Docker Hub 指定跟蹤一個目標網(wǎng)站(目前支持 GitHub 或 BitBucket)上的項目,一旦項目發(fā)生新的提交或者創(chuàng)建新的標簽(tag)体斩,Docker Hub 會自動構(gòu)建鏡像并推送到 Docker Hub 中梭稚。
要配置自動創(chuàng)建,包括如下的步驟:
- 創(chuàng)建并登錄 Docker Hub絮吵,以及目標網(wǎng)站弧烤;
- 在目標網(wǎng)站中連接帳戶到 Docker Hub;
- 在 Docker Hub 中 配置一個自動創(chuàng)建蹬敲;
- 選取一個目標網(wǎng)站中的項目(需要含
Dockerfile
)和分支暇昂; - 指定
Dockerfile
的位置,并提交創(chuàng)建伴嗡。
之后急波,可以在 Docker Hub 的 自動創(chuàng)建頁面 中跟蹤每次創(chuàng)建的狀態(tài)。