国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

穩(wěn)定與非穩(wěn)定版本軟件的Docker Image構(gòu)建策略

UCloud / 2115人閱讀

摘要:而且要注意到一般采用的是軟件的版本號(hào)作為,而不是構(gòu)建日期作為。比如你有版本,那你應(yīng)該定期從軟件倉庫中下載這三個(gè)版本的構(gòu)建物,然后對(duì)為它們構(gòu)建。對(duì)于版,你應(yīng)該將構(gòu)建的過程融入到軟件的構(gòu)建過程中。

原文

Image tag是不穩(wěn)定的

Docker image的tag是不穩(wěn)定的,這句話的意思是就算tag不變,其所代表的image并非一成不變,例如openjdk:8在去年代表jdk 8u161今年則代表jdk 8u191。就算你使用openjdk:8u181也不能保證這個(gè)image是不變的,為什么這么說?

一個(gè)Docker image大致是由4部分組成的:

其依賴的基礎(chǔ)鏡像,由Dockerfile的FROM指令所指定

其所包含的軟件,在這個(gè)例子里就是 openjdk 8u181

Dockerfile的其他腳本

啟動(dòng)入口,比如docker-entrypoint.sh

就算軟件不發(fā)生變化,另外3個(gè)也是有可能發(fā)生變化的,而構(gòu)建的新image的tag依然是openjdk:8u181。而且要注意到一般采用的是軟件的版本號(hào)作為tag,而不是commit、構(gòu)建日期作為tag。如果你是Java程序員,可以類比docker image tag為maven的SNAPSHOT。

那這意味著什么?

從docker image使用方角度,每次啟動(dòng)之前都需要pull一下,確保使用了新的image

從docker image提供方角度,就算你的軟件版本已經(jīng)凍結(jié),你仍然需要定期構(gòu)建image并發(fā)布倉庫上

針對(duì)穩(wěn)定與非穩(wěn)定版本的構(gòu)建策略

和Maven的版本定義一樣,你的軟件應(yīng)該分為兩種:

stable版,即一旦發(fā)布其版本號(hào)對(duì)應(yīng)的代碼不會(huì)再做修改

snapshot版,又稱nightly-build版,即該版本號(hào)對(duì)應(yīng)的代碼是不穩(wěn)定的

對(duì)于stable版,你應(yīng)該定期對(duì)其構(gòu)建image。比如你有版本1.0、1.1、1.2,那你應(yīng)該定期從軟件倉庫中下載這三個(gè)版本的構(gòu)建物,然后對(duì)為它們構(gòu)建image。以Maven舉例,定期從Maven倉庫下載它們的Jar,然后為它們構(gòu)建image。記得確保docker build添加了--pull選項(xiàng)。

對(duì)于snapshot版,你應(yīng)該將構(gòu)建image的過程融入到軟件的構(gòu)建過程中。以Maven為例,使用spotify-dockerfile-plugin,mvn clean install dockerfile:build dockerfile:push。

不論是stable版還是snapshot版,都應(yīng)該利用CI/CD工具(如Jenkins)將image構(gòu)建工作自動(dòng)化。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/27688.html

相關(guān)文章

  • 視頻筆記:Docker 特性及其相關(guān)工具 - Tom Verelst

    摘要:年月發(fā)布了內(nèi)核對(duì)進(jìn)行了重新設(shè)計(jì)。年發(fā)布了內(nèi)核更加徹底的改造了,稱為,并且認(rèn)可其已經(jīng)穩(wěn)定。集群工具,多宿主管理運(yùn)行。通過的設(shè)置通過設(shè)置將設(shè)置上標(biāo)簽。使用兩種方式傳遞給宿主其的主機(jī)位置,環(huán)境變量和文件。 https://www.youtube.com/watch?v=heBI7oQvHZU http://v.qq.com/page/o/8/j/o03134mlm8j.html 基本介紹 D...

    Code4App 評(píng)論0 收藏0
  • Ubuntu 17.04 x64 安裝 Docker CE 初窺 Dockerfile 部署 Ngi

    摘要:容器運(yùn)行時(shí),會(huì)打印一條信息消息并退出。因此,更好地做法是將需要使用的用戶加入用戶組。涉及到了兩條指令,和。執(zhí)行命令指令是用來執(zhí)行命令行命令的。 Docker 是個(gè)劃時(shí)代的開源項(xiàng)目,它徹底釋放了計(jì)算虛擬化的威力,極大提高了應(yīng)用的運(yùn)行效率,降低了云計(jì)算資源供應(yīng)的成本!使用 Docker,可以讓應(yīng)用的部署、測(cè)試和分發(fā)都變得前所未有的高效和輕松! 無論是應(yīng)用開發(fā)者、運(yùn)維人員、還是其他信息技術(shù)從...

    fyber 評(píng)論0 收藏0
  • Ubuntu 17.04 x64 安裝 Docker CE 初窺 Dockerfile 部署 Ngi

    摘要:容器運(yùn)行時(shí),會(huì)打印一條信息消息并退出。因此,更好地做法是將需要使用的用戶加入用戶組。涉及到了兩條指令,和。執(zhí)行命令指令是用來執(zhí)行命令行命令的。 Docker 是個(gè)劃時(shí)代的開源項(xiàng)目,它徹底釋放了計(jì)算虛擬化的威力,極大提高了應(yīng)用的運(yùn)行效率,降低了云計(jì)算資源供應(yīng)的成本!使用 Docker,可以讓應(yīng)用的部署、測(cè)試和分發(fā)都變得前所未有的高效和輕松! 無論是應(yīng)用開發(fā)者、運(yùn)維人員、還是其他信息技術(shù)從...

    seanHai 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<