一 了解Docker 鏡像
1.1 Docker 鏡像是什么
Docker 鏡像不僅提供容器運(yùn)行時(shí)所需文件,還包含了一些配置參數(shù)。鏡像內(nèi)容在構(gòu)建之后也不會(huì)被改變,只有有了鏡像才能啟動(dòng)容器
1.1 自定義鏡像有哪些好處
Dockerfile 可以快速幫助我們構(gòu)建自己的定制鏡像
1.3 如何構(gòu)建自己的Centos
第一步
通過(guò)編寫(xiě) Dockerfile 文件來(lái)制作Centos 鏡像,添加 vim、net-tools文件
第二步
新建一個(gè)dockerfile文件,在這個(gè)文件下新建mydockerfile-centos
dockerfile
cd /home mkdir dockerfile
mydockerfile-centos
FROM centos:centos7 ENV MYPATH /usr/local WORKDIR $MYPATH RUN yum -y install vim RUN yum -y install net-tools EXPOSE 80 CMD echo $MYPATH CMD echo "--- end ---" CMD /bin/bash
第三步
查看編寫(xiě)的文件,編譯剛剛寫(xiě)好的centos7
docker build -f mydockerfile-centos -t mycentos:0.1 .
第四步
等待編譯完成,完成后運(yùn)行鏡像
docker run -it mycentos:0.1
vim 文件
vim test pwd
查看ifconfig
查看歷史操作
docker history 2c2feb50d12c
二 RUN、CMD和ENTRYPOINT
2.1 RUN命令與CMD命令的區(qū)別
· RUN命令
RUN命令在Image 文件的構(gòu)建階段執(zhí)行,執(zhí)行結(jié)果會(huì)打包進(jìn)入image文件,
· CMD命令
CMD命令則是在容器啟動(dòng)后執(zhí)行
一個(gè)Dockerfile可以包含多個(gè)RUN命令,但只能由一個(gè)CMD命令
2.2 CMD和ENTRYPOINT命令的區(qū)別
· CMD
運(yùn)行的命令只有最后一個(gè)會(huì)生效
· ENRTYPOINT
運(yùn)行的命令可以追加CMD命令
CMD命令
FROM centos:centos7 CMD ["ls", "-a"]
編譯并執(zhí)行文件
docker build -f dockerfile-cmd-test -t cmdtest . docker run f74776bf8b3c
追加命令查看全部文件目錄
docker run f74776bf8b3c -l
再次執(zhí)行查看全部文件目錄命令
docker run f74776bf8b3c ls -al
ENTRYPOINT命令
dockerfile 目錄下新建文件測(cè)試ENTRYPOINT,寫(xiě)入已下內(nèi)容
cd /home/dockerfile vim dockerfile-entrypoint FROM centos:centos7 ENTRYPOINT ["ls", "-a"]
編譯文件并執(zhí)行容器
docker build -f dockerfile-entrypoint docker run 29891c9ff3c9
追加命令
docker run 29891c9ff3c9 -l
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/127628.html
摘要:化應(yīng)用程序此示例的目的是向你展示如何將應(yīng)用程序放入容器中,該指南旨在用于開(kāi)發(fā),而不用于生產(chǎn)部署,本指南還假設(shè)你有一個(gè)有效的安裝,并且基本了解應(yīng)用程序的結(jié)構(gòu)。 Docker化Node.js Web應(yīng)用程序 此示例的目的是向你展示如何將Node.js應(yīng)用程序放入Docker容器中,該指南旨在用于開(kāi)發(fā),而不用于生產(chǎn)部署,本指南還假設(shè)你有一個(gè)有效的Docker安裝,并且基本了解Node.js應(yīng)...
摘要:在本教程中,我們將使用在上部署和伸縮。它主要用來(lái)幫助操作人員部署伸縮更新和維護(hù)服務(wù),以及提供服務(wù)發(fā)現(xiàn)機(jī)制來(lái)管理節(jié)點(diǎn)集群上的容器化應(yīng)用程序。代理則使用,網(wǎng)絡(luò)啟動(dòng)協(xié)議啟動(dòng),因此容器能夠在啟動(dòng)和運(yùn)行之后自動(dòng)連接到。賬戶我們將在上部署集群。 在本教程中,我們將使用Rancher在Kubernetes上部署和伸縮Jenkins。按照本文的步驟一步步來(lái),你將會(huì)使用到我們用來(lái)測(cè)試實(shí)際構(gòu)建作業(yè)的mas...
摘要:能夠幫助您快速構(gòu)建一個(gè)基于容器的高可用彈性集群環(huán)境。并且?guī)椭p松的部署和管理應(yīng)用快速的集成更多的服務(wù)。 HeheCloud 能夠幫助您快速構(gòu)建一個(gè)基于容器的高可用彈性集群環(huán)境。并且?guī)椭p松的部署和管理應(yīng)用、快速的集成更多的服務(wù)。 您可以使用三種不同的方式來(lái)構(gòu)建應(yīng)用: Heroku Buildpack: 適用于 Heroku 風(fēng)格的應(yīng)用 Dockerfile: 基于你所選擇的基礎(chǔ) ...
摘要:分鐘快速入門(mén)教程一歡迎來(lái)到世界與虛擬化在沒(méi)有的時(shí)代,我們會(huì)使用硬件虛擬化虛擬機(jī)以提供隔離。倉(cāng)庫(kù)分為公開(kāi)倉(cāng)庫(kù)和私有倉(cāng)庫(kù),最大的公開(kāi)倉(cāng)庫(kù)是官方倉(cāng)庫(kù),國(guó)內(nèi)的公開(kāi)倉(cāng)庫(kù)也有很多選擇,例如阿里云等。 30 分鐘快速入門(mén) Docker 教程 一、歡迎來(lái)到 Docker 世界 1. Docker 與虛擬化 在沒(méi)有 Docker 的時(shí)代,我們會(huì)使用硬件虛擬化(虛擬機(jī))以提供隔離。這里,虛擬機(jī)通過(guò)在操作系...
摘要:云主機(jī)自定義鏡像制作鏡像選中要制作鏡像的主機(jī),然后點(diǎn)擊制作鏡像按鈕。鏡像的適用機(jī)型限制傳承自改自定義鏡像的母鏡像。如下圖所示,通過(guò)在中集成等工具,制作包含各類(lèi)軟件的不可變鏡像,供多云平臺(tái)的云主機(jī)等使用。云主機(jī)UHost自定義鏡像制作鏡像選中要制作鏡像的主機(jī),然后點(diǎn)擊制作鏡像按鈕。填寫(xiě)鏡像名稱(chēng)和描述,點(diǎn)擊確定即可創(chuàng)建鏡像。輸入鏡像名稱(chēng)和描述之后,點(diǎn)擊確定按鈕,即可生成該主機(jī)的鏡像,此時(shí)頁(yè)面即跳...
閱讀 1264·2022-09-27 09:47
閱讀 1173·2022-09-27 09:28
閱讀 1628·2022-09-27 09:16
閱讀 892·2022-09-27 08:21
閱讀 1064·2022-09-27 08:08
閱讀 1208·2022-09-18 12:33
閱讀 928·2022-09-16 08:01
閱讀 959·2022-09-15 12:27