校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Dockerfile構建自定義鏡像的實現

Dockerfile構建自定義鏡像的實現

熱門標簽:烏海智能電話機器人 400電話申請方案 寧夏房產智能外呼系統要多少錢 貴陽教育行業電話外呼系統 撫順移動400電話申請 做外呼系統的公司違法嗎 藍點外呼系統 在百度地圖標注車輛 威海人工外呼系統供應商

前言

前面文章中使用docker運行容器使用的鏡像都是從dockerhub上遠程pull下來的,那么我們能不能構建自己的鏡像呢?答案是肯定滴,可以通過Dockerfile構建自己的鏡像,Dockerfile本身并不難,就是一堆命令,讓小編覺得有難度的地方是如何使用Dockerfile的這些命令從更高一層的角度上更好的去構建自己的鏡像,我們就一起來看看吧。

Dockerfile簡介

Dockerfile其實就是一個文件,該文件的名字就是Dockerfile,當然也可以不用這個名字,在構建鏡像時指定名字即可,但是約定俗稱使用Dockerfile,Dockerfile的主要作用就是幫助我們構建一個自定義鏡像,因此Dockerfile也稱為鏡像構建文件或者鏡像描述文件。

可能會有小伙伴問了,在dockerhub上官方提供了很多鏡像已經基本滿足了所有的服務,為什么還要自定義鏡像呢?使用Dockerfile自己構建鏡像就可以將自己的應用打包成鏡像,運行鏡像就可以直接運行我們自定義的一些功能的服務了。

舉個簡單的例子,在dockerhub上下載centos7的鏡像,官方提供的鏡像是沒有vim這一功能的,因此我們可以基于官方的基礎的centos鏡像構建自己的鏡像來實現運行centos容器時里面自動安裝vim這一功能了。

Dockerfile構建鏡像的流程

在介紹Dockerfile構建鏡像流程前需要知道一個重要概念---上下文(context)目錄,Dockerfile所在的目錄被稱為上下文目錄。

docker是CS架構,使用Dockerfile構建鏡像時使用的命令是docker build,當在客戶端的操作系統中執行該命令時,docker引擎會將Dockerfile所在的目錄中的所有數據打包發送給docker服務端,因此Dockerfile所在的目錄中最好只包含構建當前鏡像所需的文件,服務端運行一行Dockerfile中的命令就會產生一個臨時鏡像存在docker cache中(如果不想要產生臨時鏡像在docker build后加--no_cache參數),運行到最后一行的時候會得到一個最終的鏡像。如下圖所示:

Dockerfile使用

首先說一下Dockerfile構建鏡像的命令:

# 命令格式:docker build -t 鏡像名:tag Dockerfile所在路徑
docker build -t mycentos:01 .

下面就來介紹一下在Dockerfile中常用的命令,注意注意,在Dockerfile中所有的命令都是大寫的哦~。

FROM 鏡像名:tag  :Dockerfile中第一條命令,表示基于哪個鏡像進行構建鏡像。雖然是構建自定義鏡像,但是這個自定義鏡像也是在官方提供的基礎鏡像之上進行的哦。

# Dockerfile
FROM centos:7  # 表示鏡像基于centos7進行構建

RUN:構建鏡像時需要運行的命令,可以跟shell命令。

# 第一種語法格式
RUN yum install -y vim

# 第二種語法格式
RUN ["yum", "install", "-y", "vim"]

EXPOSE:對外界暴露的端口,只有在鏡像中暴露端口,才能在執行docker run命令時指定-p參數。

EXPOSE 9000  # 表示暴露9000端口

WORKDIR:指定進入容器時的路徑,可以寫多個,容器內沒有指定的路徑時會創建該路徑,可以寫多個,下一個路徑是基于上一個路徑的相對路徑。

WORKDIR /data
WORKDIR /a

COPY:將context目錄中指定文件復制到鏡像的指定目錄中.

# 命令格式:COPY 原路徑(可以是絕對路徑也可以是相對路徑) 容器內目標路徑
# 語法格式一
COPY /root/app/aa.txt /data 

# 語法格式二
COPY ["<src>", ..., "<dest>"] ---語法格式二

ADD:將context目錄中指定文件復制到鏡像的指定目錄中,可以識別URL,自動下載URL對應的壓縮包,可以將本地壓縮包復制到鏡像指定目錄后自動解壓。

# context目錄中指定文件復制到鏡像的指定目錄中
ADD bb.txt /data

# 自動識別URL并下載到容器內指定目錄
ADD https://www.python.org/ftp/python/3.9.1/Python-3.9.1.tgz /data

# 將壓縮包會自動解壓到指定目錄
ADD xxx.tar /data

ENTRYPOINT:用來指定容器啟動時執行的命令,和CMD類似,往往用來設置容器啟動后的第一個命令,可以寫多個;可以被覆蓋。

# ENTRYPOINT shell腳本 或者 ENTRYPOINT ["tail", "-f"...]
ENTRYPOINT tail -f bb.txt
# 覆蓋
docker run --entrypoint=cat mycentos:08 /data/bb.txt

CMD:以最后一條CMD為準;可以被覆蓋;可以為ENTRYPOINT傳參數,與ENTRYPOINT結合使用(只能用json數組的形式)

# 只運行最后一條CMD
CMD ls $BASEDIR
CMD cat bb.txt

# 可以被覆蓋,docker run后面的命令會直接覆蓋Dockerfile中的CMD后的命令
docker run mycentos:09 ls /data

# 與ENTRYPOINT結合使用,為ENTRYPOINT傳參,可以動態傳遞參數比如項目路徑不變但是項目名稱會變化,需要注意的時候,兩者結合使用的時候必須使用json數組的格式。
ENTRYPOINT ["ls", "/data"]
CMD [/data/bb"]

或者

docker run mycentos:10 /data/bb/aa

到此這篇關于Dockerfile構建自定義鏡像的實現的文章就介紹到這了,更多相關Dockerfile構建鏡像 內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家! 

標簽:那曲 銅川 周口 泰州 松原 朝陽 蕪湖 慶陽

巨人網絡通訊聲明:本文標題《Dockerfile構建自定義鏡像的實現》,本文關鍵詞  Dockerfile,構建,自定義,鏡像,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Dockerfile構建自定義鏡像的實現》相關的同類信息!
  • 本頁收集關于Dockerfile構建自定義鏡像的實現的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    精品99999| 8v天堂国产在线一区二区| 日韩网站在线看片你懂的| 国产精品久久久久久久久动漫 | 这里只有精品免费| 欧美国产禁国产网站cc| 日产欧产美韩系列久久99| 97久久精品人人爽人人爽蜜臀| 精品国产一区二区亚洲人成毛片 | 久久久久99精品国产片| 日韩av中文在线观看| 色香蕉成人二区免费| 国产视频一区二区在线| 青青青伊人色综合久久| 欧美无砖砖区免费| 一区视频在线播放| 国产91精品在线观看| 精品国产3级a| 久久 天天综合| 欧美一区二区精品久久911| 亚洲一区视频在线观看视频| 成人av在线电影| 久久久噜噜噜久久中文字幕色伊伊| 七七婷婷婷婷精品国产| 欧美日韩小视频| 亚洲电影中文字幕在线观看| 91精彩视频在线| 亚洲精选一二三| 91啦中文在线观看| 中文字幕中文字幕一区| 国产91精品入口| 国产三区在线成人av| 狠狠色综合播放一区二区| 日韩欧美国产三级电影视频| 蜜芽一区二区三区| 欧美一区二区三区视频免费播放| 午夜精品久久久| 欧美日韩一级视频| 午夜伦欧美伦电影理论片| 欧美日韩国产一级| 日韩精品亚洲一区| 欧美一区二区不卡视频| 免费高清成人在线| 日韩欧美中文字幕公布| 久久精品国产77777蜜臀| 精品乱码亚洲一区二区不卡| 九九精品视频在线看| 精品成人佐山爱一区二区| 国产在线视视频有精品| 国产亚洲视频系列| 成人va在线观看| 亚洲女同ⅹxx女同tv| 欧美丝袜丝nylons| 日韩不卡一区二区三区| 日韩美女视频一区二区在线观看| 国产专区综合网| 国产精品欧美综合在线| 91影院在线观看| 亚洲成人黄色影院| 欧美日韩精品三区| 极品瑜伽女神91| 国产亚洲人成网站| 色综合天天天天做夜夜夜夜做| 亚洲三级理论片| 91久久久免费一区二区| 日韩高清欧美激情| xf在线a精品一区二区视频网站| 国产99久久久国产精品免费看| 亚洲特黄一级片| 欧美日韩激情一区| 激情图区综合网| 18成人在线视频| 欧美日韩不卡一区二区| 韩国女主播一区| 国产精品传媒入口麻豆| 欧美日韩久久久一区| 激情文学综合网| 亚洲欧洲www| 欧美日韩成人高清| 国产伦理精品不卡| 亚洲精品国产a| 欧美大白屁股肥臀xxxxxx| 国产69精品一区二区亚洲孕妇| 亚洲你懂的在线视频| 欧美一区二区三级| 成a人片国产精品| 午夜精品久久久久久久久久| 国产午夜亚洲精品不卡| 在线观看亚洲专区| 黄色日韩网站视频| 亚洲精品久久7777| 精品国内片67194| 色88888久久久久久影院按摩| 热久久免费视频| 成人欧美一区二区三区视频网页| 制服丝袜在线91| 99视频超级精品| 蜜桃久久久久久| 亚洲精品国产品国语在线app| 日韩精品在线一区二区| 一本大道综合伊人精品热热| 老司机精品视频一区二区三区| 亚洲天天做日日做天天谢日日欢 | 欧美日韩视频专区在线播放| 国产一区二区三区在线观看免费视频| 亚洲精品日韩一| 久久天堂av综合合色蜜桃网| 欧美自拍偷拍一区| 国产成人精品亚洲日本在线桃色| 午夜精品免费在线| 亚洲欧洲美洲综合色网| 精品美女在线播放| 欧美日韩综合不卡| 成人福利视频网站| 美女任你摸久久| 亚洲第一综合色| 日韩久久一区二区| 久久精品亚洲精品国产欧美kt∨| 在线不卡一区二区| 色婷婷国产精品| 成人国产精品免费观看| 国产一区二区视频在线播放| 蜜桃视频一区二区| 婷婷成人激情在线网| 亚洲欧美日本在线| 亚洲国产精品精华液2区45| 欧美精品一区二区三区蜜桃| 91精品欧美一区二区三区综合在| 在线观看视频一区二区| 99国产精品国产精品毛片| 国产伦精品一区二区三区在线观看| 男男视频亚洲欧美| 亚洲成人免费电影| 亚洲一区二区四区蜜桃| 亚洲精品老司机| 亚洲四区在线观看| 国产精品国产a| 欧美极品xxx| 久久综合999| 日韩欧美国产一区二区在线播放| 777奇米四色成人影色区| 在线中文字幕不卡| 成人激情免费电影网址| 看电视剧不卡顿的网站| 成人欧美一区二区三区小说| 欧美国产精品中文字幕| 欧美变态凌虐bdsm| 欧美一区二区三区影视| 欧美性欧美巨大黑白大战| 91蜜桃视频在线| 成人免费高清视频| 国产一区二区三区四| 经典一区二区三区| 国产剧情一区二区三区| 精品一区二区三区欧美| 日韩精品乱码免费| 婷婷中文字幕综合| 中文字幕制服丝袜成人av| 国产欧美精品一区二区三区四区| 日韩免费看网站| 欧美一级二级三级蜜桃| 在线观看不卡视频| 欧美三级日韩三级| 在线视频你懂得一区二区三区| 91免费观看视频| 成人av网站在线| 91丝袜国产在线播放| www.日韩av| 99这里都是精品| 成人免费黄色在线| 色婷婷综合久久久中文字幕| 懂色av中文一区二区三区| 老司机免费视频一区二区三区| 老汉av免费一区二区三区 | 国产女人18毛片水真多成人如厕 | 老司机免费视频一区二区| 极品销魂美女一区二区三区| 紧缚捆绑精品一区二区| 国产麻豆视频一区| 韩日av一区二区| 成人看片黄a免费看在线| 丁香桃色午夜亚洲一区二区三区| 高清shemale亚洲人妖| 99视频热这里只有精品免费| 欧美午夜精品久久久久久孕妇 | 奇米影视在线99精品| 亚洲自拍偷拍九九九| 日韩专区欧美专区| 九九视频精品免费| 国产成人在线看| 成人免费av在线| 在线观看www91| 欧美一区二区三区视频| 久久久精品免费观看| 国产日韩欧美电影| 亚洲人成在线观看一区二区| 亚洲国产裸拍裸体视频在线观看乱了| 日韩av电影免费观看高清完整版| 国产一区二区在线免费观看| 成人一道本在线|