真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何進(jìn)行Docker鏡像命名的實(shí)踐

本篇文章為大家展示了如何進(jìn)行Docker 鏡像命名的實(shí)踐 ,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)建站是一家專注于成都網(wǎng)站建設(shè)、成都網(wǎng)站制作與策劃設(shè)計(jì),武平網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)建站做網(wǎng)站,專注于網(wǎng)站建設(shè)10多年,網(wǎng)設(shè)計(jì)領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:武平等地區(qū)。武平做網(wǎng)站價(jià)格咨詢:18980820575

我們已經(jīng)學(xué)會(huì)構(gòu)建自己的鏡像了。接下來(lái)的問題是如何在多個(gè) Docker Host 上使用鏡像。

這里有幾種可用的方法:

  1. 用相同的 Dockerfile 在其他 host 構(gòu)建鏡像。

  2. 將鏡像上傳到公共 Registry(比如 Docker Hub),Host 直接下載使用。

  3. 搭建私有的 Registry 供本地 Host 使用。

第一種方法沒什么特別的,前面已經(jīng)討論很多了。我們將討論如何使用公共和私有 Registry 分發(fā)鏡像。

為鏡像命名

無(wú)論采用何種方式保存和分發(fā)鏡像,首先都得給鏡像命名。

當(dāng)我們執(zhí)行 docker build 命令時(shí)已經(jīng)為鏡像取了個(gè)名字,例如前面:

docker build -t ubuntu-with-vi

這里的 ubuntu-with-vi 就是鏡像的名字。通過 dock images 可以查看鏡像的信息。

這里注意到 ubuntu-with-vi 對(duì)應(yīng)的是 REPOSITORY,而且還有一個(gè)叫 latest 的 TAG。

實(shí)際上一個(gè)特定鏡像的名字由兩部分組成:repository 和 tag。

[image name] = [repository]:[tag]
 

如果執(zhí)行 docker build 時(shí)沒有指定 tag,會(huì)使用默認(rèn)值 latest。其效果相當(dāng)于:

docker build -t ubuntu-with-vi:latest
 

tag 常用于描述鏡像的版本信息,比如 httpd 鏡像

當(dāng)然 tag 可以是任意字符串,比如 ubuntu 鏡像

小心 latest tag

千萬(wàn)別被 latest tag 給誤導(dǎo)了。latest 其實(shí)并沒有什么特殊的含義。當(dāng)沒指明鏡像 tag 時(shí),Docker 會(huì)使用默認(rèn)值 latest,僅此而已。

雖然 Docker Hub 上很多 repository 將 latest 作為最新穩(wěn)定版本的別名,但這只是一種約定,而不是強(qiáng)制規(guī)定。

所以我們?cè)谑褂苗R像時(shí)最好還是避免使用 latest,明確指定某個(gè) tag,比如 httpd:2.3,ubuntu:xenial。

tag 使用最佳實(shí)踐

借鑒軟件版本命名方式能夠讓用戶很好地使用鏡像。

一個(gè)高效的版本命名方案可以讓用戶清楚地知道當(dāng)前使用的是哪個(gè)鏡像,同時(shí)還可以保持足夠的靈活性。

每個(gè) repository 可以有多個(gè) tag,而多個(gè) tag 可能對(duì)應(yīng)的是同一個(gè)鏡像。下面通過例子為大家介紹 Docker 社區(qū)普遍使用的 tag 方案。

假設(shè)我們現(xiàn)在發(fā)布了一個(gè)鏡像 myimage,版本為 v1.9.1。那么我們可以給鏡像打上四個(gè) tag:1.9.1、1.9、1 和 latest。

我們可以通過 docker tag 命令方便地給鏡像打 tag。

docker tag myimage-v1.9.1 myimage:1

docker tag myimage-v1.9.1 myimage:1.9

docker tag myimage-v1.9.1 myimage:1.9.1

docker tag myimage-v1.9.1 myimage:latest
 

過了一段時(shí)間,我們發(fā)布了 v1.9.2。這時(shí)可以打上 1.9.2 的 tag,并將 1.9、1 和 latest 從 v1.9.1 移到 v1.9.2。

命令為:

docker tag myimage-v1.9.2 myimage:1

docker tag myimage-v1.9.2 myimage:1.9

docker tag myimage-v1.9.2 myimage:1.9.2

docker tag myimage-v1.9.2 myimage:latest
 

之后,v2.0.0 發(fā)布了。這時(shí)可以打上 2.0.0、2.0 和 2 的 tag,并將 latest 移到 v2.0.0。

命令為:

docker tag myimage-v2.0.0 myimage:2

docker tag myimage-v2.0.0 myimage:2.0

docker tag myimage-v2.0.0 myimage:2.0.0

docker tag myimage-v2.0.0 myimage:latest


這種 tag 方案使鏡像的版本很直觀,用戶在選擇非常靈活:

  1. myimage:1 始終指向 1 這個(gè)分支中最新的鏡像。

  2. myimage:1.9 始終指向 1.9.x 中最新的鏡像。

  3. myimage:latest 始終指向所有版本中最新的鏡像。

  4. 如果想使用特定版本,可以選擇 myimage:1.9.1、myimage:1.9.2 或 myimage:2.0.0。

Docker Hub 上很多 repository 都采用這種方案,所以大家一定要熟悉。

上述內(nèi)容就是如何進(jìn)行Docker 鏡像命名的實(shí)踐 ,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)頁(yè)標(biāo)題:如何進(jìn)行Docker鏡像命名的實(shí)踐
網(wǎng)址分享:http://weahome.cn/article/gojsij.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部