一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

Linux|Centos|Ubuntu|系統(tǒng)進(jìn)程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務(wù)器之家 - 服務(wù)器系統(tǒng) - Linux - 在Linux下的Docker中新建容器的方法

在Linux下的Docker中新建容器的方法

2019-10-09 17:03開源中文社區(qū) Linux

這篇文章主要介紹了在Linux下的Docker中新建容器的方法,文中的示例基于CentOS系統(tǒng)和Apache服務(wù)器,需要的朋友可以參考下

大家好,今天我們來學(xué)習(xí)如何使用一個(gè)docker鏡像交互式地創(chuàng)建一個(gè)Docker容器。當(dāng)我們從鏡像中啟動(dòng)一個(gè)Docker進(jìn)程,Docker就會(huì)獲取該鏡像及其父鏡像,并重復(fù)這個(gè)過程,直到到達(dá)基礎(chǔ)鏡像。然后聯(lián)合文件系統(tǒng)(UFS)會(huì)在其頂層添加一個(gè)讀寫層。讀寫層被稱之為容器,它包含了一些關(guān)于父鏡像信息及一些其他的信息,如唯一ID,網(wǎng)絡(luò)配置和資源限制等。容器是有狀態(tài)的,其狀態(tài)可以從 運(yùn)行態(tài) 切換到 退出態(tài)。一個(gè)處于 運(yùn)行態(tài)的容器包含了在CPU上面運(yùn)行的進(jìn)程樹,于其它在該主機(jī)上運(yùn)行的進(jìn)程相隔離,而退出態(tài)是指文件系統(tǒng)的狀態(tài),并保留了其退出值。你可以使用它來啟動(dòng),停止和重啟一個(gè)容器。

Docker技術(shù)為IT界帶來了巨大的改變,它使得云服務(wù)可以用來共享應(yīng)用和工作流程自動(dòng)化,使得應(yīng)用可以用組件快速組合,消除了開發(fā)、品質(zhì)保證、產(chǎn)品環(huán)境間的摩擦。在這篇文章中,我們將會(huì)建立CentOS環(huán)境,然后用Apache網(wǎng)絡(luò)服務(wù)器提供一個(gè)網(wǎng)站服務(wù)。
這是一個(gè)快速且容易的教程,討論我們怎樣使用交互的shell,以交互的方式來創(chuàng)建一個(gè)容器。
1. 運(yùn)行一個(gè)Docker實(shí)例

Docker首先會(huì)嘗試從本地取得并運(yùn)行所需的鏡像,如果在本地主機(jī)上沒有發(fā)現(xiàn),它就會(huì)從Docker公共注冊中心拉取。這里,我們將會(huì)拉取鏡像并在 Docker 容器中創(chuàng)建一個(gè)fedora實(shí)例,并連接到它的 tty 上的bash shell。

   

復(fù)制代碼

代碼如下:

# docker run -i -t fedora bash


    在Linux下的Docker中新建容器的方法

 

    2.安裝Apache網(wǎng)絡(luò)服務(wù)器

現(xiàn)在,在我們的Fedora基本鏡像實(shí)例準(zhǔn)備好后,我們將會(huì)開始交互式地安裝Apache網(wǎng)絡(luò)服務(wù)器,而不是為它創(chuàng)建Dockerfile。為了做到這點(diǎn),我們需要在終端或者shell運(yùn)行以下命令。

   

復(fù)制代碼

代碼如下:

# yum update

 

    在Linux下的Docker中新建容器的方法

   

復(fù)制代碼

代碼如下:

# yum install httpd


   在Linux下的Docker中新建容器的方法

 

    退出容器的 tty。

   

復(fù)制代碼

代碼如下:

# exit

 

3.保存鏡像

現(xiàn)在,我們要去保存在Fedora實(shí)例里做的修改。要做到這個(gè),我們首先需要知道實(shí)例的容器ID。而為了得到ID,我們又需要運(yùn)行以下命令(LCTT 譯注:在容器外執(zhí)行該命令)。

   

復(fù)制代碼

代碼如下:

# docker ps -a


在Linux下的Docker中新建容器的方法

 

    然后,我們會(huì)保存這些改變?yōu)橐粋€(gè)新的鏡像,請運(yùn)行以下命令。

   

復(fù)制代碼

代碼如下:

# docker commit c16378f943fe fedora-httpd

 

    在Linux下的Docker中新建容器的方法

    這里,修改已經(jīng)通過使用容器ID保存起來了,鏡像名字叫fedora-httpd。為了確認(rèn)新的鏡像是否在運(yùn)行,我們將運(yùn)行以下命令。

   

復(fù)制代碼

代碼如下:

# docker images


    在Linux下的Docker中新建容器的方法

 

    4. 添加內(nèi)容到新的鏡像

我們自己新的Fedora Apache鏡像正成功的運(yùn)行,現(xiàn)在我們想添加一些我們網(wǎng)站的網(wǎng)頁內(nèi)容到Apache網(wǎng)絡(luò)服務(wù)器,使得網(wǎng)站能夠開箱即用。為做到這點(diǎn),我們需要?jiǎng)?chuàng)建一個(gè)新的Dockerfile,它會(huì)處理從復(fù)制網(wǎng)頁內(nèi)容到啟用80端口的所有操作。要達(dá)到這樣的目的,我們需要使用我們最喜歡的文本編輯器創(chuàng)建Dockerfile文件,像下面演示的一樣。

   

復(fù)制代碼

代碼如下:

# nano Dockerfile

 

現(xiàn)在,我們需要添加以下的命令行到文件中。

   

復(fù)制代碼

代碼如下:

FROM fedora-httpd
ADD mysite.tar /tmp/
RUN mv /tmp/mysite/* /var/www/html
EXPOSE 80
ENTRYPOINT [ "/usr/sbin/httpd" ]
CMD [ "-D", "FOREGROUND" ]

 

    在Linux下的Docker中新建容器的方法

    這里,上述的Dockerfile中,放在mysite.tar里的網(wǎng)頁內(nèi)容會(huì)自動(dòng)解壓到/tmp/文件夾里。然后,整個(gè)站點(diǎn)會(huì)被移動(dòng)到Apache的網(wǎng)頁根目錄/var/www/html/,命令expose 80會(huì)打開80端口,這樣網(wǎng)站就能正常訪問了。其次,入口點(diǎn)放在了/usr/sbin/https里面,保證Apache服務(wù)器能夠執(zhí)行。
5. 構(gòu)建并運(yùn)行一個(gè)容器 

現(xiàn)在,我們要用剛剛創(chuàng)建的Dockerfile創(chuàng)建我們的容器,以便將我們的網(wǎng)站添加到上面。為做到這,我們需要運(yùn)行以下命令。

   

復(fù)制代碼

代碼如下:

# docker build -rm -t mysite


    在Linux下的Docker中新建容器的方法

 

    建立好我們的新容器后,我們需要要用下面的命令來運(yùn)行容器。

   

復(fù)制代碼

代碼如下:

# docker run -d -P mysite


   在Linux下的Docker中新建容器的方法

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 免费一看一级毛片人 | 插入粉嫩 | 成人福利视频网址 | 国产亚洲视频在线 | vod国产成人精品视频 | 国产久热精品 | 国内精品久久久久小说网 | 国产成人小视频 | 四虎在线精品观看免费 | 高清视频大片免费观看 | 91嫩草国产在线观看免费 | 亚洲成人第一页 | 日日爽| 91久久福利国产成人精品 | 国产成人免费高清激情明星 | 4hu四虎永久网址 | 国产精品久久久久久久久免费hd | 羞羞影院午夜男女爽爽影院网站 | 国产激情一区二区三区成人91 | 久久九九精品国产自在现线拍 | 国产成人99精品免费观看 | 99热这里只有精品免费 | 秋霞午夜 | 精品国产一区二区三区久 | 99九九成人免费视频精品 | 日韩r | 亚洲欧美一区二区三区在线观看 | 欧美日韩国产最新一区二区 | 日本漫画工囗全彩番在线 | 婷婷色在线 | 91制片厂制作果冻传媒2021 | 精品国产91久久久久 | 免费看一区二区三区 | 女人把私密部位张开让男人桶 | 欧美亚洲国产精品久久久 | 波多在线 | 亚洲色图150p | 精品国产免费久久久久久 | 国产经典一区二区三区蜜芽 | 99爱在线精品视频免费观看9 | 色婷婷激婷婷深爱五月老司机 |