Docker 鏡像

Docker 使用鏡像創(chuàng)建容器的過程:現(xiàn)在本機(jī)查找有無該鏡像恋捆,如果不存在妒峦,就去官方Docker Hub 倉庫查找并下載到本機(jī)杏节,然后基于該容器創(chuàng)建容器唯竹。

docker run --name gitlab-redis -d sameersbn/redis:latest

鏡像分層

Docker 鏡像采用分層機(jī)制乐导,相同部分獨(dú)立成層,所以浸颓,相同部分只需要存儲(chǔ)一份即可物臂,大大節(jié)省了鏡像空間。


image.png

Docker鏡像的兩個(gè)特性:

  • 一個(gè)已有的分層只能讀不能修改
  • 上層鏡像的優(yōu)先級(jí)高于底層鏡像
    舉例:


    image.png

    通過修改讀寫層生成鏡像(通過容器的方式創(chuàng)建鏡像)存在的弊端:會(huì)導(dǎo)致鏡像的層數(shù)越來越多产上,允許的最大層數(shù)為128棵磷;底層鏡像修改,影響大量的上層鏡像晋涣。

Dockerfile

Dockerfile是由一系列命令和參數(shù)構(gòu)成的腳本仪媒,這些命令應(yīng)用于基礎(chǔ)鏡像并最終創(chuàng)建一個(gè)新的鏡像。它們簡化了從頭到尾的流程并極大的簡化了部署工作谢鹊。Dockerfile從FROM命令開始算吩,緊接著跟隨者各種方法,命令和參數(shù)佃扼。其產(chǎn)出為一個(gè)新的可以用于創(chuàng)建容器的鏡像偎巢。

在撰寫 Dockerfile 的時(shí)候,要經(jīng)常提醒自己兼耀,這并不是在寫 Shell 腳本压昼,而是在定義每一層該如何構(gòu)建

語法規(guī)則:

  • From:表示新的鏡像從以那個(gè)鏡像為基礎(chǔ)進(jìn)行構(gòu)建
  • MAINTAINER:指定鏡像的創(chuàng)建者
  • ENV:設(shè)置環(huán)境變量
  • RUN:運(yùn)行shell命令,如果有多條命令可以用 && 連接
    RUN apt-get update
    RUN [ "apt-get", "update" ]
  • COPY:將編譯機(jī)本地文件拷貝到鏡像文件系統(tǒng)中
  • EXPOSE:指定監(jiān)聽的端口
  • ENTRYPOINT:創(chuàng)建的容器啟動(dòng)后才執(zhí)行
  • CMD:和RUN命令相似瘤运,CMD可以用于執(zhí)行特定的命令巢音。和RUN不同的是,這些命令不是在鏡像構(gòu)建的過程中執(zhí)行的尽超,而是在用鏡像構(gòu)建容器后被調(diào)用官撼。

上下文路徑:

上下文路徑,是指 docker 在構(gòu)建鏡像似谁,有時(shí)候想要使用到本機(jī)的文件(比如復(fù)制)傲绣,docker build 命令得知這個(gè)路徑后,會(huì)將路徑下的所有內(nèi)容打包巩踏。

解析:由于 docker 的運(yùn)行模式是 C/S秃诵。我們本機(jī)是 C,docker 引擎是 S塞琼。實(shí)際的構(gòu)建過程是在 docker 引擎下完成的菠净,所以這個(gè)時(shí)候無法用到我們本機(jī)的文件。這就需要把我們本機(jī)的指定目錄下的文件一起打包提供給 docker 引擎使用。

如果未說明最后一個(gè)參數(shù)毅往,那么默認(rèn)上下文路徑就是 Dockerfile 所在的位置牵咙。

注意:上下文路徑下不要放無用的文件,因?yàn)闀?huì)一起打包發(fā)送給 docker 引擎攀唯,如果文件過多會(huì)造成過程緩慢洁桌。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市侯嘀,隨后出現(xiàn)的幾起案子另凌,更是在濱河造成了極大的恐慌,老刑警劉巖戒幔,帶你破解...
    沈念sama閱讀 216,843評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件吠谢,死亡現(xiàn)場離奇詭異,居然都是意外死亡诗茎,警方通過查閱死者的電腦和手機(jī)工坊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來错沃,“玉大人,你說我怎么就攤上這事雀瓢∈辔觯” “怎么了?”我有些...
    開封第一講書人閱讀 163,187評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵刃麸,是天一觀的道長醒叁。 經(jīng)常有香客問我,道長泊业,這世上最難降的妖魔是什么把沼? 我笑而不...
    開封第一講書人閱讀 58,264評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮吁伺,結(jié)果婚禮上饮睬,老公的妹妹穿的比我還像新娘。我一直安慰自己篮奄,他們只是感情好捆愁,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,289評(píng)論 6 390
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著窟却,像睡著了一般昼丑。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上夸赫,一...
    開封第一講書人閱讀 51,231評(píng)論 1 299
  • 那天菩帝,我揣著相機(jī)與錄音,去河邊找鬼。 笑死呼奢,一個(gè)胖子當(dāng)著我的面吹牛宜雀,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播控妻,決...
    沈念sama閱讀 40,116評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼州袒,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了弓候?” 一聲冷哼從身側(cè)響起郎哭,我...
    開封第一講書人閱讀 38,945評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎菇存,沒想到半個(gè)月后夸研,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,367評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡依鸥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,581評(píng)論 2 333
  • 正文 我和宋清朗相戀三年亥至,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片贱迟。...
    茶點(diǎn)故事閱讀 39,754評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡姐扮,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出衣吠,到底是詐尸還是另有隱情茶敏,我是刑警寧澤,帶...
    沈念sama閱讀 35,458評(píng)論 5 344
  • 正文 年R本政府宣布缚俏,位于F島的核電站惊搏,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏忧换。R本人自食惡果不足惜恬惯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,068評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望亚茬。 院中可真熱鬧酪耳,春花似錦、人聲如沸刹缝。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽赞草。三九已至讹堤,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間厨疙,已是汗流浹背洲守。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人梗醇。 一個(gè)月前我還...
    沈念sama閱讀 47,797評(píng)論 2 369
  • 正文 我出身青樓知允,卻偏偏與公主長得像,于是被迫代替她去往敵國和親叙谨。 傳聞我的和親對(duì)象是個(gè)殘疾皇子温鸽,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,654評(píng)論 2 354