精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

IT工程師都需要掌握的容器技術之Dockerfile

開發 前端
今天我們繼續來學習Docker技術,本篇文章主要介紹Dockerfile,Dockerffile是一個文本文件,Docker通過讀取Dockerfile文件來自動構建鏡像。

 今天我們繼續來學習Docker技術,本篇文章主要介紹Dockerfile,Dockerffile是一個文本文件,Docker通過讀取Dockerfile文件來自動構建鏡像。

下面就由成哥來介紹Dockerfile的語法及使用方法吧!

01 Dockerfile概述

Dockerfile相當于一個文檔,用戶可以基于dockerfile生產新的容器。Dockerfile僅僅是用來制作鏡像的源碼文件,是構建容器過程中的指令,docker能夠讀取dockerfile的指令進行自動構建容器,基于dockerfile制作鏡像,每一個指令都會創建一個鏡像層,即鏡像層是多層疊加的,鏡像層數越多,效率越低。所以創建鏡像時盡量通過越少的指令完成需要的動作。Docker通過dockerfile進行build及build后的鏡像運行流程邏輯如下圖所示。

 

IT工程師都需要掌握的容器技術之Dockerfile

 

02 Dockerfile的編寫

(1) 上下文

上下文就是指我們build Docker鏡像時Dockerfile文件所在的目錄,構建鏡像是由Docker守護程序而不是CLI運行的,該過程的第一件事是將 Dockerfile 文件所在目錄下的所有內容遞歸的發送到守護進程。所以在大多數情況下,最好是創建一個新的目錄,在其中保存 Dockerfile,并在其中添加構建 Dockerfile 所需的文件。

現在我們就在系統中創建一個空目錄以便下面Dockerfile文件的創建及后面的鏡像構建

 

IT工程師都需要掌握的容器技術之Dockerfile

 

(2) Dockerfile格式

Dockerfile的語法格式如下所示:

 

  1. 1. # 格式為語法+參數   
  2. 2. INSTRUCTION arguments   

 

該指令不區分大小寫。但是,約定將它們大寫,以便更輕松地將它們與參數區分開。Dockerfile按順序運行指令。

(3) Dockerfile常用指令

1)FROM

一個Dockerfile 必須以開始FROM的指令。使用FROM指令指定一個基礎鏡像,后續指令將在此鏡像的基礎上運行,在一個Dockerfile文件中FROM可以出現多次,下面我們來看看FROM的語法格式

  1. 1. FROM [--platform=<platform>] <image> [AS <name>]   

我們創建一個Dockerfile文件,其中FROM指定以centos為基礎鏡像

 

  1. 1. # 指定以centos為基礎鏡像進行build   
  2. 2. FROM centos   

 

2)WORKDIR

WORKDIR用于指定工作目錄,所有執行的shell語句都會在該指定的目錄中運行,我們后面講的 RUN,CMD,COPY,ADD 等指令將會在指定的工作目錄中去執行。該指令也可以在一個Dockerfile文件中出現多次,最后一次出現的目錄依次是上個目錄的子目錄。如下所示:

 

  1. 1. WORKDIR /a   
  2. 2. WORKDIR b   
  3. 3. WORKDIR c   
  4. 4. RUN pwd   

 

最后這個pwd的命令執行的目錄為/a/b/c。我們繼續基于上面的指令來指定WORKDIR目錄為'/'

 

IT工程師都需要掌握的容器技術之Dockerfile

 

3)RUN

RUN 指令用于執行命令,該指令有兩種形式:

a. RUN ,使用 shell 去執行指定的命令 command,一般默認的 shell 為 /bin/sh -c

b. RUN ["executable", "param1", "param2"],使用可執行的文件或程序后面并可以跟上相關參數

下面我們通過這兩種形式來創建執行命令

 

  1. 1. # 第一種RUN指令方式   
  2. 2. RUN yum update   
  3. 3.    
  4. 4. # 第二種RUN指令方式   
  5. 5. RUN ["/bin/bash""-c""echo hello"]  

4)CMD

CMD 的使用方式跟 RUN 類似,其跟RUN的區別是RUN是在構建鏡像是運行執行而CMD是容器運行后執行的指令。在一個 Dockerfile 文件中只能有一個 CMD 指令,如果有多個 CMD 指令,則只有最后一個會生效。CMD也有三種命令格式具體如下

 

  1. 1. # 第一種執行命令推薦用法   
  2. 2. CMD ["executable","param1","param2"]   
  3. 3.    
  4. 4. # 第二種該格式主要配合ENTRYPOINT使用,CMD 指令的值會作為 ENTRYPOINT 指令的參數   
  5. 5. CMD ["param1","param2"]   
  6. 6.    
  7. 7. # 第三種執行shell form,該方法與第一種的執行效果一致   
  8. 8. CMD command param1 param2    

 

我們通過第一種方式來創建來執行wc的幫助指定具體如下

 

  1. 1. CMD ["/usr/bin/wc","--help"]   

第二種方法需要在Dockerfile中使用ENTRYPOINT指令,ENTRYPOINT 指令會覆蓋 CMD 指令作為容器運行時的默認指令,并且不會在 docker run 時被覆蓋,如下示例

 

  1. 1. FROM centos   
  2. 2. ENTRYPOINT ["ls""-a"]   
  3. 3. CMD ["-l"]   

 

上述構建的鏡像,在我們使用 docker run 時等同于 docker run ls -a l 命令。CMD 指令的值會被當作 ENTRYPOINT 指令的參數附加到 ENTRYPOINT 指令的后面,并且如果 docker run 中指定了參數,會覆蓋 CMD 中給出的參數。

5)COPY&ADD

COPY 和 ADD 都用于將文件,目錄等復制到鏡像中。兩者的區別在于ADD可以使用遠程URL路徑作為復制源,如果只復制本地文件建議使用COPY,兩個指令的語法格式如下:

 

  1. 1. # ADD命令格式   
  2. 2. ADD [--chown=<user>:<group>] <src>... <dest>   
  3. 3. ADD [--chown=<user>:<group>] ["<src>",... "<dest>"]   
  4. 4.    
  5. 5. # COPY命令格式   
  6. 6. COPY [--chown=<user>:<group>] <src>... <dest>   
  7. 7. COPY [--chown=<user>:<group>] ["<src>",... "<dest>"]   

--chown用于指定文件目錄用戶與權限, 可以指定多個,但是其路徑不能超出上下文的路徑,即必須在跟 Dockerfile 同級或子目錄中。 不需要預先存在,不存在路徑時會自動創建,如果沒有使用絕對路徑,則 為WORKDIR指定目錄的相對路徑。

6)ENV

ENV用于定義Dockerfile的環境變量,變量設置的值將在構建階段中所有后續指令的環境中使用,并且在許多情況下也可以內聯替換。其命令格式如下:

  1. 1. ENV <key>=<value> ...   

使用示例如下

 

  1. 1. # $MYDIR將被替換成"/mydir"   
  2. 2. ENV MYDIR="/mydir"   
  3. 3. RUN mkdir $MYDIR   

 

7)VOLUME

VOLUME用于在Dockerfile文件中指定掛載目錄,在容器運行時,將自動創建相應的匿名卷,其命令格式如下

 

  1. 1. VOLUME ["/data"]   

該條命令會在容器運行時創建一個匿名卷,同時將容器中/data目錄掛載到該卷上。

8)EXPOSE

EXPOSE指令通知Docker容器在運行時監聽指定的網絡端口。您可以指定端口是偵聽TCP還是UDP,如果未指定協議,則默認值為TCP。EXPOSE指令實際上并未發布端口。它充當構建映像的人員和運行容器的人員之間的一種文檔類型,有關打算發布哪些端口的信息。如果要將容器端口暴露出來,需要在 dcoker run 命令中使用 -p。

EXPOSE指令格式與用法示例如下:

 

  1. 1. # EXPOSE命令格式   
  2. 2. EXPOSE <port> [<port>/<protocol>...]   
  3. 3.    
  4. 4. # 使容器同時監聽TCP與UDP的80端口   
  5. 5. EXPOSE 80/tcp   
  6. 6. EXPOSE 80/udp   

 

03 Dockerfile鏡像構建

我們現在通過Dockerfile來構建一個nginx服務器,Dockerfile具體配置如下:

 

  1. 1. # 指定基礎鏡像   
  2. 2. FROM centos   
  3. 3.    
  4. 4. # 設置環境目錄   
  5. 5. WORKDIR /   
  6. 6.    
  7. 7. # 安裝nginx   
  8. 8. RUN yum install nginx -y   
  9. 9.    
  10. 10. # 容器對外暴露80端口   
  11. 11. EXPOSE 80   
  12. 12.    
  13. 13. # 啟動nginx   
  14. 14. CMD ["/usr/sbin/nginx""-g""daemon off;"]   

 

接著通過該Dockerfile文件進行鏡像構建,具體如下

 

IT工程師都需要掌握的容器技術之Dockerfile

 

 

IT工程師都需要掌握的容器技術之Dockerfile

 

最后我們啟動容器,同時查看nginx服務是否能夠訪問,具體操作如下

 

IT工程師都需要掌握的容器技術之Dockerfile

 

 

IT工程師都需要掌握的容器技術之Dockerfile

 

 

IT工程師都需要掌握的容器技術之Dockerfile

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2020-11-25 09:27:49

Docker容器技術

2020-10-19 09:32:49

容器Docker管理

2020-10-26 15:11:50

Docker容器IT

2020-10-27 10:52:37

Docker容器存儲

2010-08-10 13:22:41

2020-03-17 15:15:49

Python工程師面試題

2020-07-22 14:50:35

Python數據分析

2022-08-12 09:21:43

前端JavaScript代碼

2020-08-05 08:25:58

大數據Java技術

2021-03-31 22:25:46

運維工程師技能

2017-09-22 08:33:34

機器學習Web設計UI

2010-08-10 13:29:58

軟件工程師

2013-08-15 09:47:27

企業網絡簡化網絡工程師

2012-03-31 16:57:52

工程師創業團隊

2025-06-12 01:11:11

AsyncAwait函數

2021-03-09 10:47:56

系統架構師算法工程師人工智能工程師

2018-12-29 15:10:22

工程師爬蟲Python

2021-03-24 15:15:34

數據工程師開發工具

2009-12-18 10:08:47

路由器協議

2017-03-30 16:03:06

Linux運維工程師技能
點贊
收藏

51CTO技術棧公眾號

国产精国产精品| 国产视频亚洲视频| 国产日本在线播放| 亚洲国产精品18久久久久久| 国产一区二区你懂的| 国产一区二区黄| 久久发布国产伦子伦精品| 91色在线看| 国产精品视频一二三区| av色综合网| 无码无套少妇毛多18pxxxx| 国产精品不卡| 亚洲欧美精品一区| 下面一进一出好爽视频| 日韩性xxx| 亚洲一区在线观看免费观看电影高清| 欧美日韩免费精品| 国内毛片毛片毛片毛片| 日韩综合小视频| 欧美激情一区二区久久久| a级在线免费观看| 91午夜精品| 欧美日韩中文字幕精品| 一区二区传媒有限公司| 四虎影院观看视频在线观看| 亚洲国产精品99久久久久久久久| 不卡视频一区| 国产精品久久久久久久免费看| 亚洲深夜福利| 欧美黑人国产人伦爽爽爽| 精品丰满少妇一区二区三区| 亚洲精品aaaaa| 精品久久国产97色综合| 一级片免费在线观看视频| 姬川优奈av一区二区在线电影| 亚洲自拍另类综合| 天天操天天干天天玩| 91在线视频免费看| 国产亚洲一区字幕| 久久综合色一本| 午夜18视频在线观看| 国产成人自拍网| 成人中文字幕在线观看| 日本一区二区三区久久| 久久久噜噜噜久久狠狠50岁| 国内精品一区二区三区| 久久久国产精品黄毛片| 亚洲精品在线观看91| 中文字幕在线观看日韩| 国产美女永久免费无遮挡| 免费欧美视频| 亚洲欧美日韩精品久久| 欧美在线一级片| 国产精品男女| 亚洲高清不卡av| 黄色性视频网站| www.国产精品一区| 精品久久久久久最新网址| 麻豆精品国产传媒| 亚洲一区网址| 亚洲成人中文字幕| 又黄又爽的网站| 欧美偷窥清纯综合图区| 亚洲精品一区二区三区婷婷月| 在线免费观看污视频| 久久国产精品免费精品3p| 亚洲福利影片在线| 久久久久成人精品无码中文字幕| 国产精品99久久免费观看| 精品国产精品网麻豆系列| 国产高潮视频在线观看| 日韩欧美ww| 伊人精品在线观看| 后入内射无码人妻一区| 最新欧美人z0oozo0| 欧美福利在线观看| 国产又大又黄视频| 日韩电影在线观看电影| 国产美女被下药99| 国产男女猛烈无遮挡| 成人午夜av电影| 久久久久久久久四区三区| 国产高清在线看| 亚洲摸摸操操av| 日韩精品一区二区在线视频 | 亚洲色图18p| 欧美三级视频网站| 综合激情婷婷| 人人澡人人澡人人看欧美| 中文字幕 视频一区| 国产精品一二三四五| 精品国产一区二区三区麻豆小说| 国产高清美女一级毛片久久| 亚洲日本一区二区| 国产免费毛卡片| 欧美日韩免费电影| 亚洲国产精久久久久久| 能直接看的av| 亚洲免费成人| 国产美女扒开尿口久久久| 国产综合无码一区二区色蜜蜜| 99精品久久免费看蜜臀剧情介绍| 在线天堂一区av电影| 成人女同在线观看| 欧美日韩在线观看一区二区 | av网址在线观看免费| 日韩午夜视频在线| 亚洲精品第一页| 性生交大片免费全黄| 国产精品乱看| 亚洲自拍av在线| 91看片在线观看| 舔着乳尖日韩一区| 91精品国产三级| 国产乱码精品一区二区三区四区 | 欧美gay视频| 日韩欧美在线网站| 精品手机在线视频| 国产日韩一区二区三区在线| 91久久国产精品91久久性色| 九色蝌蚪在线| 欧美三级xxx| 中文字幕av一区二区三区人妻少妇| 亚洲精品国产动漫| 欧美激情视频在线| 一卡二卡三卡在线| 国产午夜亚洲精品不卡| 精品少妇一区二区三区在线| 精品视频一二| 久久精品国产2020观看福利| 中文字幕 欧美激情| 久久亚洲捆绑美女| 日韩av高清在线看片| 久久在线观看| 久久视频在线视频| 亚洲网站免费观看| 国产精品日日摸夜夜摸av| 国产男女无遮挡| 欧美freesex8一10精品| 欧美精品国产精品日韩精品| 国产又黄又粗又猛又爽| 亚洲国产精品国自产拍av| 成人一区二区三| 欧洲专线二区三区| 国产aⅴ夜夜欢一区二区三区 | 国产一区二区三区三区在线观看| 天天操天天干视频| 99国产精品久久久久久久久久久| 黄色网在线视频| 136福利精品导航| 欧美国产视频一区二区| 蜜桃91麻豆精品一二三区| 玉米视频成人免费看| 欧美一区二区三区影院| 欧美激情偷拍| αv一区二区三区| h片在线观看视频免费免费| 亚洲精品一区二区三区福利| 日韩女同强女同hd| 91原创在线视频| 国产美女三级视频| 国语产色综合| 国产欧美中文字幕| 黄色网址视频在线观看| 日韩视频免费直播| 免费观看一级视频| 91在线视频播放地址| 国产日韩一区二区在线| 欧美色图一区| 91在线视频免费| 免费网站在线观看人| 亚洲福利视频网| 黄色片视频免费| 国产精品福利影院| 免费黄视频在线观看| 亚洲精品系列| 亚洲aⅴ天堂av在线电影软件| 亚洲毛片在线免费| 欧美激情国产精品| 久久精品a一级国产免视看成人| 欧洲一区二区三区在线| 性色av无码久久一区二区三区| 成人黄色在线视频| 91香蕉视频污版| 综合天堂av久久久久久久| 国产日韩欧美亚洲一区| 午夜av成人| 超在线视频97| 欧美一区二区三区在线观看| 在线观看国产亚洲| 国产精品电影一区二区三区| 精品人妻一区二区免费| 日韩精品色哟哟| 992tv快乐视频| 久久91精品| 国产v亚洲v天堂无码| 日本一道高清亚洲日美韩| 欧美日韩成人在线播放| 日本一级在线观看| 欧美一区二区三区电影| 4438国产精品一区二区| 亚洲免费观看在线视频| xxx在线播放| 成人综合激情网| 天堂在线中文在线| 午夜亚洲影视| 成人在线视频一区二区三区| 韩日一区二区三区| 国产在线精品一区二区三区| 日韩午夜电影免费看| 欧美洲成人男女午夜视频| 国产丝袜在线| 在线视频欧美性高潮| 日韩在线观看视频网站| 91精品国产欧美一区二区18| 69av视频在线观看| 午夜精品福利一区二区蜜股av| 免费看的黄色录像| 99精品在线观看视频| 无套内谢丰满少妇中文字幕 | 国产97在线观看| 2021中文字幕在线| 欧美日韩成人在线播放| 黄色网页在线免费看| 中文字幕欧美视频在线| 经典三级在线| 日韩电影第一页| 理论片中文字幕| 欧美刺激脚交jootjob| 一区二区 亚洲| 欧美性猛片xxxx免费看久爱| 久久久久久久久久久影院| 亚洲午夜国产一区99re久久| 成人免费毛片xxx| 亚洲欧洲国产日韩| 2014亚洲天堂| 亚洲私人影院在线观看| 亚洲精品国产精品国自| 日本一区二区免费在线| 先锋影音av在线| 国产亚洲一区字幕| www.黄色在线| 国产日韩欧美综合一区| 中文字幕第4页| 久久久久国产精品厨房| 国产女主播喷水高潮网红在线| 91在线观看高清| 欧洲女同同性吃奶| 国产亚洲欧美中文| 五月天精品在线| 国产精品女人毛片| 天天做夜夜爱爱爱| 亚洲精品少妇30p| 国内偷拍精品视频| 一区二区成人在线| 日韩精品成人一区| 色丁香久综合在线久综合在线观看| 久久久久久久久久久久久av| 一本大道久久精品懂色aⅴ| 日本中文字幕第一页| 欧美亚州韩日在线看免费版国语版| 亚洲av综合一区| 欧美美女喷水视频| 亚洲精品无amm毛片| 亚洲精品91美女久久久久久久| 手机福利小视频在线播放| 亚洲欧美日韩第一区| av中文天堂在线| 久久综合久久八八| 99riav视频在线观看| 国产mv久久久| 香蕉久久一区| 99久久综合狠狠综合久久止| 国产精品jk白丝蜜臀av小说| 久久久精品有限公司| 国产剧情在线观看一区| 日韩精品第1页| 亚洲国产一区二区精品专区| 韩国一区二区av| 精品一区二区久久| 91丨porny丨对白| 国产片一区二区三区| 日韩激情小视频| 午夜电影久久久| 伊人免费在线观看| 精品国产乱码久久久久久夜甘婷婷 | 国产精品乱看| 三区视频在线观看| 99精品国产99久久久久久白柏| 欧美激情久久久久久久| 亚洲精品视频免费观看| 黄色一级视频免费看| 欧美一区二区三区啪啪| 国产在线一二| 欧美交受高潮1| 成人国产在线| 精品久久sese| 午夜视频一区| 粉色视频免费看| 337p粉嫩大胆噜噜噜噜噜91av | 久久精品青草| 成年人免费在线播放| 国产精品一区免费视频| 1024手机在线观看你懂的| 亚洲成av人在线观看| 一区二区的视频| 亚洲一区二区福利| av中文在线资源库| 亚洲在线免费看| 欧美激情欧美| 国产亚洲天堂网| 成人免费观看视频| 国产色无码精品视频国产| 色噜噜偷拍精品综合在线| 国模私拍视频在线| 久久久精品视频在线观看| 婷婷激情一区| 久久久久久久久久久久久9999| 欧美精品首页| 欧美xxxxxbbbbb| 国产精品久久久久毛片软件| 国产精品21p| 亚洲成人性视频| 福利在线导航136| 91成人免费观看| 婷婷综合视频| 色免费在线视频| 国产欧美视频一区二区| 中文字幕一区在线播放| 亚洲国产私拍精品国模在线观看| 18视频在线观看| 91亚洲精品在线| 亚洲激情中文| 亚洲制服在线观看| 亚洲人成在线观看一区二区| 一级做a爱片性色毛片| 中文字幕最新精品| 精品国产美女a久久9999| 五月天丁香综合久久国产 | 久久精品视频在线观看免费| 亚洲国产精华液网站w| 中文在线免费看视频| 亚洲午夜av电影| 日本美女久久| 午夜一区二区三区| 久热成人在线视频| 日本中文在线视频| 欧美一二区视频| 国产精品69xx| 国产自产精品| 久久国产福利| 变态另类ts人妖一区二区| 欧美视频在线观看一区| 草草影院在线观看| 成人午夜一级二级三级| 色琪琪久久se色| 一级网站在线观看| 亚洲伊人伊色伊影伊综合网| 欧美一级特黄aaaaaa| 8050国产精品久久久久久| 亚洲精品亚洲人成在线| 日韩一级片播放| 1024亚洲合集| 亚洲国产精品久久人人爱潘金莲 | 亚洲午夜精品视频| 国产黄色精品| av日韩在线看| 91久色porny| 一级片免费网站| 欧美大学生性色视频| 日韩精品a在线观看91| 成人一区二区三| 亚洲激情校园春色| 手机福利小视频在线播放| 国产欧美精品xxxx另类| 欧美一区二区三区另类 | 欧美极品在线视频| 亚洲天堂日韩在线| 91国内在线播放| 五月激情综合色| 亚洲成a人v欧美综合天堂麻豆| 91九色在线免费视频| 羞羞视频在线观看欧美| 日本视频在线免费| 日韩av在线免播放器| 亚洲成人精品综合在线| 国产青青在线视频| 中文字幕在线不卡| 天天干天天爽天天操| 成人福利免费观看| 国产亚洲高清视频| 欧美做爰爽爽爽爽爽爽| 亚洲欧美激情另类校园| 久久国产精品美女| 妞干网在线免费视频| 亚洲精品国产无天堂网2021 | 久久久天堂av| av一区二区三| 国产精品www网站| 日韩视频精品在线观看|