最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker執(zhí)行DockerFile構(gòu)建過程指令解析

 更新時間:2022年04月13日 15:44:27   作者:Tiamon_  
這篇文章主要為大家介紹了Docker執(zhí)行DockerFile構(gòu)建過程及DockerFile的指令解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪<BR>

DockerFile 簡介

鏡像的定制實際上就是定制每一層所添加的配置、文件。如果我們可以把每一層修改、安裝、構(gòu)建、操作的命令都寫入一個腳本,用這個腳本來構(gòu)建、定制鏡像,那么那些無法重復(fù)的問題、鏡像構(gòu)建透明性的問題、體積的問題就都會解決。這個腳本就是 Dockerfile。

DockerFile 是用來構(gòu)建 Docker 鏡像的構(gòu)建文件,是由一系列命令和參數(shù)構(gòu)成的腳本。

DockerFile 構(gòu)建過程

1.DockerFile 內(nèi)容基礎(chǔ)知識

  • 每條保留字指令都必須為大寫字母且后面要跟隨至少一個參數(shù)
  • 指令按照從上到下,順序執(zhí)行
  • #表示注釋
  • 每條指令都會創(chuàng)建一個新的鏡像層,并對鏡像進(jìn)行提交

2、Docker 執(zhí)行 DockerFile 的大致流程

  • docker 從基礎(chǔ)鏡像運行一個容器
  • 執(zhí)行一條指令并對容器作出修改
  • 執(zhí)行類似 docker commit 的操作提交一個新的鏡像層
  • docker 再基于剛提交的鏡像運行一個新容器
  • 執(zhí)行 dockerfile 中的下一條指令直到所有指令都執(zhí)行完成

3、總結(jié)

從應(yīng)用軟件的角度來看,Dockerfile、Docker 鏡像與 Docker 容器分別代表軟件的三個不同階段

DockerFile:是軟件的原材料

Docker 鏡像:是軟件的交付品

Docker 容器:可以認(rèn)為是軟件的運行態(tài)

DockerFile 面向開發(fā),Docker 鏡像成為交付標(biāo)準(zhǔn),Docker 容器則涉及部署與運維,三者缺一不可,合力充當(dāng)Docker 體系的基石

DockerFile:需要定義一個DockerFile,DockerFile定義了進(jìn)程需要的一切東西。DockerFile涉及的內(nèi)容包括執(zhí)行代碼或者是文件、環(huán)境變量、依賴包、運行時環(huán)境、動態(tài)鏈接庫、操作系統(tǒng)的發(fā)行版、服務(wù)進(jìn)程和內(nèi)核進(jìn)程(當(dāng)應(yīng)用進(jìn)程需要和系統(tǒng)服務(wù)和內(nèi)核進(jìn)程打交道,這時需要考慮如何設(shè)計 namespace 的權(quán)限控制)等等

Docker 鏡像:再用 DockerFile 定義一個文件后,docker build時會產(chǎn)生一個 Docker 鏡像,當(dāng)運行 Docker 鏡像時,會真正開始提供服務(wù)

Docker 容器:容器是直接提供服務(wù)

DockerFile 指令解析

指令解析
FROM鏡像基礎(chǔ),當(dāng)前新鏡像是基于哪個鏡像構(gòu)建
MAINTAINER鏡像維護(hù)者的姓名和郵箱地址
RUN容器構(gòu)建時需要運行的命令
EXPOSE當(dāng)前容器對外暴露出的端口
WORKDIR指定再創(chuàng)建容器后,終端默認(rèn)登陸的進(jìn)來工作目錄,一個落腳點
ENV用來構(gòu)建鏡像過程中設(shè)置環(huán)境變量
ADD將宿主機(jī)目錄下的文件拷貝進(jìn)鏡像且ADD命令會自動處理URL和解壓tar壓縮包
COPY類似ADD,拷貝文件和目錄到鏡像中,將從構(gòu)建上下文件目錄中<源路徑>的文件/目錄復(fù)制到新的一層鏡像內(nèi)的<目標(biāo)路徑>位置
VOLUME保持?jǐn)?shù)據(jù)和持久化工作
CMD指定一個容器啟動時要運行的命令,DockerFile 中可以有多個CMD 指令,但只有最后一個生效,CMD會被 docker run 之后的參數(shù)替換
ENTRYPOINT指定一個容器啟動時要運行的命令,ENTRYPOINT 的目的和CMD 一樣,都是在指定容器啟動程序及參數(shù)
ONBUILD觸發(fā)器(當(dāng)別人在使用你的鏡像制作新的鏡像會觸發(fā)一個動作)

DockerFile 案例演示

構(gòu)建一個 mycentos 鏡像

自定義mycentos使我們自己的鏡像具備,登錄后的默認(rèn)路徑為 /test,vim編輯器

#拉取基礎(chǔ)鏡像 centos:latest
	[root@docker ~]# docker pull centos
#創(chuàng)建工作目錄 /dockerfile
	[root@docker ~]# mkdir /mydocker
#編寫 dockerfile
	[root@docker ~]# vim /mydocker/dockerfile_centos
	FROM centos
	MAINTAINER zzyy<zzyy167@126.com
	RUN touch /test
	ENV MYPATH /test   #登錄容器落腳點路徑
	WORKDIR $MYPATH
	RUN yum install -y vim
	EXPOSE 80       #暴露的端口80
	CMD echo $MYPATH
	CMD echo "success------------ok"
	CMD /bin/bash
#構(gòu)建新的鏡像
	[root@docker ~]# docker build -f /mydocker/dockerfile_centos -t mycentos:test .
	……略……
	Successfully built ed8bd0ce1d67
	Successfully tagged mycenter:test
#查看新鏡像
	[root@docker ~]# docker images
	REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
	mycentos            test                ed8bd0ce1d67        39 seconds ago      300MB
	centos              latest              0f3e07c0138f        13 months ago       220MB
#啟動容器
	[root@docker ~]# docker run -it mycentos:test
	[root@0cdd7d2f5595 test   #登錄容器落腳點路徑]# 
#驗證 vim 是否安裝
	[root@0cdd7d2f5595 test   #登錄容器落腳點路徑]# rpm -qa vim*
	vim-minimal-8.0.1763-10.el8.x86_64
	vim-common-8.0.1763-13.el8.x86_64
	vim-enhanced-8.0.1763-13.el8.x86_64
	vim-filesystem-8.0.1763-13.el8.noarch

以上就是Docker執(zhí)行DockerFile構(gòu)建過程指令解析的詳細(xì)內(nèi)容,更多關(guān)于Docker執(zhí)行DockerFile構(gòu)建指令的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • docker打包python鏡像的全教程分享

    docker打包python鏡像的全教程分享

    Docker是一種開源的容器化平臺,可以讓開發(fā)者將應(yīng)用程序和其依賴項打包到一個可移植的容器中,然后在不同的環(huán)境中運行,本文主要給大家介紹了docker打包python鏡像全教程,需要的朋友可以參考下
    2024-02-02
  • docker在linux系統(tǒng)上邊下載鏡像速度緩慢的問題及解決

    docker在linux系統(tǒng)上邊下載鏡像速度緩慢的問題及解決

    這篇文章主要介紹了docker在linux系統(tǒng)上邊下載鏡像速度緩慢的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • 利用nexus作為私庫進(jìn)行代理docker,進(jìn)行上傳和下載鏡像操作

    利用nexus作為私庫進(jìn)行代理docker,進(jìn)行上傳和下載鏡像操作

    這篇文章主要介紹了利用nexus作為私庫進(jìn)行代理docker,進(jìn)行上傳和下載鏡像操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 詳解如何將docker快速升級到最新版本

    詳解如何將docker快速升級到最新版本

    最近在對區(qū)塊鏈瀏覽器調(diào)優(yōu),該區(qū)塊鏈瀏覽器就是使用docker部署的微服務(wù),在一臺新的服務(wù)器上啟動時報錯,發(fā)現(xiàn)是docker版本過低,所以本文給大家介紹了將docker快速升級到最新版本的方法,需要的朋友可以參考下
    2024-02-02
  • Docker構(gòu)建鏡像的兩種方式實現(xiàn)

    Docker構(gòu)建鏡像的兩種方式實現(xiàn)

    從 docker 鏡像倉庫中下載的鏡像不能滿足我們的需求時,可以通過以下兩種方式對鏡像進(jìn)行更改。本文就詳細(xì)的介紹了這兩種方法,感興趣的可以了解一下
    2021-09-09
  • docker網(wǎng)卡的IP地址修改方法總結(jié)

    docker網(wǎng)卡的IP地址修改方法總結(jié)

    這篇文章主要給大家總結(jié)介紹了關(guān)于docker網(wǎng)卡的IP地址修改方法,文中通過實例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用docker具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2023-06-06
  • Docker安裝常用組件(mysql,redis)的方法

    Docker安裝常用組件(mysql,redis)的方法

    今天小編就為大家分享一篇關(guān)于Docker安裝常用組件(mysql,redis)的方法,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2018-10-10
  • Docker安裝Redis容器的實現(xiàn)步驟

    Docker安裝Redis容器的實現(xiàn)步驟

    本文主要介紹了Docker安裝Redis容器的實現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Docker大型項目容器化改造

    Docker大型項目容器化改造

    今天小編就為大家分享一篇關(guān)于Docker大型項目容器化改造,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01
  • Docker中的容器網(wǎng)絡(luò)以及其配置說明

    Docker中的容器網(wǎng)絡(luò)以及其配置說明

    這篇文章主要介紹了Docker中的容器網(wǎng)絡(luò)以及其配置說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04

最新評論

德江县| 肇源县| 泰兴市| 双江| 福安市| 海兴县| 上虞市| 深泽县| 克什克腾旗| 偏关县| 新河县| 磴口县| 肇东市| 揭阳市| 桃园县| 庆安县| 高阳县| 昂仁县| 赫章县| 当阳市| 白河县| 罗山县| 自治县| 信丰县| 航空| 邢台县| 松潘县| 奉节县| 南昌县| 吴堡县| 金川县| 枣庄市| 渭南市| 弋阳县| 临夏县| 荣昌县| 黎城县| 濉溪县| 长子县| 甘德县| 易门县|