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

靈魂一問:為什么你的 Docker 容器剛啟動就停了

運維 系統(tǒng)運維
很多docker初學(xué)者,在運行容器的時候,或者是寫第一個dockerfile的時候,問題最多的就是容器啟動后就停了,怎么看都覺得命令沒有問題,容器也沒有錯誤日志,dockerfile也就那么幾條……

 很多docker初學(xué)者,在運行容器的時候,或者是寫第一個dockerfile的時候,問題最多的就是容器啟動后就停了,怎么看都覺得命令沒有問題,容器也沒有錯誤日志,dockerfile也就那么幾條……

其實你沒有錯,錯的是docker,它執(zhí)行的太快了

這話怎么說呢,我拿nginx官方的dockerfile給你解釋下。

靈魂一問:為什么你的 Docker 容器剛啟動就停了

上面是nginx官方的dockerfile文件,我把set部分刪掉了,其他沒啥,主要看下CMD

為什么這里不是systemctl nginx start,或者/etc/init.d/nginx start,再或者nginx直接啟動,而是用daemon off的方式啟動?

這是因為如果nginx用后臺模式運行,啟動的命令執(zhí)行完之后,這個啟動的命令就退出了,這個時候,容器也就跟著退出了

又為什么命令執(zhí)行完,容器就退出了?這個要從linux內(nèi)核說起。

在linux操作系統(tǒng)中,當(dāng)內(nèi)核初始化完畢之后,會啟動一個init進(jìn)程,這個進(jìn)程是整個操作系統(tǒng)的第一個用戶進(jìn)程,所以它的進(jìn)程ID為1,也就是我們常說的PID1進(jìn)程,然后所有的用戶態(tài)進(jìn)程,都是這個進(jìn)程的子進(jìn)程,所以,整個系統(tǒng)的用戶進(jìn)程,都是由init進(jìn)程作為根進(jìn)程的

要了解這個PID1進(jìn)程,要從以下幾個概念了解:

  • 進(jìn)程表項

linux內(nèi)核程序通過進(jìn)程表對進(jìn)程進(jìn)行管理, 每個進(jìn)程在進(jìn)程表中占有一項,稱為進(jìn)程表項,它記錄了進(jìn)程的狀態(tài),打開的文件描述符等等一系統(tǒng)信息。當(dāng)一個進(jìn)程結(jié)束了運行或在半途中終止了運行,那么內(nèi)核就需要釋放該進(jìn)程所占用的系統(tǒng)資源。這包括進(jìn)程運行時打開的文件,申請的內(nèi)存等。

但是,這里要注意的是,進(jìn)程表項并沒有隨著進(jìn)程的退出而被清除,它會一直占用內(nèi)核的內(nèi)存。為什么會有這么奇怪的行為呢?這是因為在某些程序中,我們必須明確地知道進(jìn)程的退出狀態(tài)等信息,而這些信息的獲取是由父進(jìn)程調(diào)用wait/waitpid而獲取的。

設(shè)想這樣一種場景,如果子進(jìn)程在退出的時候直接清除文件表項的話,那么父進(jìn)程就很可能沒有地方獲取進(jìn)程的退出狀態(tài)了,因此操作系統(tǒng)就會將文件表項一直保留至wait/waitpid系統(tǒng)調(diào)用結(jié)束。

  • 僵尸進(jìn)程

僵尸進(jìn)程指的是:進(jìn)程退出后,到其父進(jìn)程還未對其調(diào)用wait/waitpid之間的這段時間所處的狀態(tài)。一般來說,這種狀態(tài)持續(xù)的時間很短,所以我們一般很難在系統(tǒng)中捕捉到。但是,一些粗心的程序員可能會忘記調(diào)用wait/waitpid,或者由于某種原因未執(zhí)行該調(diào)用等等,那么這個時候就會出現(xiàn)長期駐留的僵尸進(jìn)程了。如果大量的產(chǎn)生僵尸進(jìn)程,其進(jìn)程號就會一直被占用,可能導(dǎo)致系統(tǒng)不能產(chǎn)生新的進(jìn)程。

然后還有我們經(jīng)常會見到的一種情況,就是父進(jìn)程先于子進(jìn)程結(jié)束,這種情況多見于手動kill某個父進(jìn)程的情況,這種情況就是下面要說到的

  • 孤兒進(jìn)程

父進(jìn)程先于子進(jìn)程退出,那么子進(jìn)程將成為孤兒進(jìn)程。孤兒進(jìn)程將被init進(jìn)程(進(jìn)程號為1)接管,并由init進(jìn)程對它完成狀態(tài)收集(wait/waitpid)工作

PID1負(fù)責(zé)清理那些被拋棄的進(jìn)程所留下來的痕跡,有效的回收的系統(tǒng)資源,保證系統(tǒng)長時間穩(wěn)定的運行

了解了linux的PID1,接著來看下容器中的PID1進(jìn)程

熟悉docker都知道,docker容器并不是一個完整的linux的操作系統(tǒng),它也沒什么內(nèi)核初始化過程,更沒有像init(1)這樣的初始化過程。在docker容器中被標(biāo)志為PID1的進(jìn)程實際上就是一個普通的用戶進(jìn)程,我們還拿nginx官方的鏡像起的容器來看。

我用docker run -d nginx直接啟動的

靈魂一問:為什么你的 Docker 容器剛啟動就停了

可以看到,就是Dockerfile中指定的CMD那個進(jìn)程,注意:如果你啟動容器的時候,指定了命令,會覆蓋CMD,也就是CMD是條默認(rèn)啟動的命令參數(shù),如果啟動容器時指定了命令,會覆蓋,當(dāng)Dockerfile中有多條CMD時,執(zhí)行最后一條

這個進(jìn)程其實在宿主機(jī)上有一個普通的用戶進(jìn)程ID

靈魂一問:為什么你的 Docker 容器剛啟動就停了

之所以在容器中PID變成1,是因為linux內(nèi)核提供的PID namespaces功能,如果宿主機(jī)上所有用戶進(jìn)程構(gòu)成了一個完整的樹形結(jié)構(gòu),那么PID namespaces實際上就是將這個CMD或ENTRYPOINT進(jìn)程及其子進(jìn)程作為另外一個分支,很顯然這部分也是一個樹形結(jié)構(gòu)

當(dāng)我們在宿主機(jī)上kill掉這個進(jìn)程ID,那么整個容器便會處于退出狀態(tài)
這也就解釋了上面為什么命令執(zhí)行完之后,容器就退出了

認(rèn)真的小伙伴從上面圖中看到了,我上面說linux中PID1進(jìn)程為所有用戶進(jìn)程的父進(jìn)程,但是在容器里面,通過ps命令看到的進(jìn)程的父進(jìn)程都是“0”,這又是為什么呢?

前面提到,容器中的進(jìn)程樹實際上是宿主機(jī)進(jìn)程樹的一棵子樹,或者說分支,那么我們在宿主機(jī)上就可以找到這顆子樹的父進(jìn)程。

靈魂一問:為什么你的 Docker 容器剛啟動就停了

我們可以看到,這個docker容器中PID 0的進(jìn)程應(yīng)該就是這個containerd-shim
我們結(jié)合docker的結(jié)構(gòu)圖看一下

靈魂一問:為什么你的 Docker 容器剛啟動就停了

從架構(gòu)圖中,我們可以看到containerd-shim進(jìn)程下還有一個runC進(jìn)程,但是我們在上面過程中,并沒有發(fā)現(xiàn)runC這個進(jìn)程

runC是OCI標(biāo)準(zhǔn)的一個參考實現(xiàn),而OCI Open Container Initiative,是由多家公司共同成立的項目,并由linux基金會進(jìn)行管理,致力于container runtime的標(biāo)準(zhǔn)的制定和runc的開發(fā)等工作。runc,是對于OCI標(biāo)準(zhǔn)的一個參考實現(xiàn),是一個可以用于創(chuàng)建和運行容器的CLI(command-line interface)工具。

runc直接與容器所依賴的cgroup/linux kernel等進(jìn)行交互,負(fù)責(zé)為容器配置cgroup/namespace等啟動容器所需的環(huán)境,創(chuàng)建啟動容器的相關(guān)進(jìn)程

事實上,Docker容器的創(chuàng)建過程是這樣子的 docker-containerd-shim –> runC –> entrypoint,而我們看到的最終狀態(tài)是 docker-containerd-shim –> entrypoint,而runc進(jìn)程創(chuàng)建完容器之后,自己就先退出去了,所以我們上面的過程中一直沒有出現(xiàn)

看到這里你應(yīng)該了解,為什么你啟動容器或?qū)懞玫膁ockerfile,總是剛啟動就退出,而且沒有任何錯誤了吧!

責(zé)任編輯:張燕妮 來源: 高效運維
相關(guān)推薦

2019-08-23 09:38:11

鴻蒙OS IDE操作系統(tǒng)

2021-05-14 07:11:49

方法調(diào)用類加載

2024-12-03 08:53:46

Go語言類型

2017-11-06 13:16:49

Apple WatchSiri天氣預(yù)報

2019-12-20 09:31:23

TCPHTTP瀏覽器

2020-04-03 09:00:21

系統(tǒng)架構(gòu)代碼

2014-10-13 10:41:48

安防布線

2020-03-24 10:20:24

TCP協(xié)議網(wǎng)路

2019-04-13 14:33:29

2021-04-05 16:44:34

Windows 10Windows操作系統(tǒng)

2019-08-12 11:14:00

JVM垃圾對象

2018-04-11 09:50:04

大數(shù)據(jù)

2018-04-02 10:58:28

大數(shù)據(jù)sqoop大數(shù)據(jù)項目

2015-12-08 11:08:00

戴爾云計算

2021-02-28 07:43:28

請求提交方案

2021-10-12 23:45:43

NodeJs事件

2023-09-28 10:21:44

CSS前端

2016-08-19 01:59:22

APPAPM用戶

2019-01-29 19:24:06

分庫分表數(shù)據(jù)庫

2021-04-06 15:45:01

AI
點贊
收藏

51CTO技術(shù)棧公眾號

亚洲午夜久久久久久久久久久| 欧美亚洲在线| 欧美一级二级在线观看| 欧美午夜小视频| 九色国产在线观看| 国产一区二区在线影院| 久久6免费高清热精品| 中文字幕在线观看的网站| 欧美成人一二区| 亚洲电影在线免费观看| 欧美日韩一级黄| 欧美国产视频在线观看| 亚洲最大成人av| 在线观看日韩av电影| 亚洲人线精品午夜| 国产精品偷伦视频免费观看了| 裤袜国产欧美精品一区| 国产精品国产a级| 久久久com| 国产精品永久久久久久久久久| 午夜一区不卡| 欧美国产视频日韩| 精品一区二区在线观看视频| 久久99精品国产自在现线| 777午夜精品免费视频| 国产97在线 | 亚洲| 成人免费观看视频大全| 国产视频一区二区在线| 久久久综合香蕉尹人综合网| 国产日本精品视频| 日本aⅴ免费视频一区二区三区| 久久久久久久亚洲精品| 天天做夜夜爱爱爱| 欧美gayvideo| 在线日韩中文字幕| 一级片手机在线观看| 中文字幕区一区二区三| 欧美军同video69gay| 免费看a级黄色片| 伊伊综合在线| 欧美日韩亚洲一区二区| 久久久久久免费看| 免费在线观看的电影网站| 亚洲欧美激情视频在线观看一区二区三区 | 蜜桃无码一区二区三区| 嫩草国产精品入口| 亚洲成人精品久久| 国产精品扒开腿做爽爽爽a片唱戏| 国内精品视频| 91精品国产乱| 精品国产_亚洲人成在线| 国产午夜大地久久| 欧美3p视频在线观看| 99精品国产一区二区三区不卡| 国产精品成人观看视频免费| 亚洲国产www| 国产精品一区二区在线观看不卡| 成人a在线视频| 国产免费福利视频| 国产在线视视频有精品| 亚洲最大成人在线| 亚洲精品一区二区三区蜜桃| 国产大片一区二区| 国产伦理一区二区三区| 手机av免费在线观看| 99久久久国产精品| 欧洲亚洲一区二区三区四区五区| 国产永久免费高清在线观看视频| 中文字幕精品—区二区四季| 中文字幕在线观看一区二区三区| 久热国产在线| 亚洲午夜精品在线| 欧美三级一级片| 亚洲成人激情社区| 欧美日韩一区成人| 老司机av网站| 精品一区欧美| 啊v视频在线一区二区三区 | 亚洲乱码一区二区三区在线观看| 欧美做受777cos| 第四色日韩影片| 欧美日韩国产在线看| 青草青青在线视频| 精品人人视频| 欧美网站大全在线观看| 韩国三级丰满少妇高潮| 精品三级av| 在线播放日韩专区| 青娱乐免费在线视频| 亚洲大片在线| 国产精品稀缺呦系列在线| 国产男女裸体做爰爽爽| eeuss影院一区二区三区| 日本一区二区精品| 91蜜桃在线视频| 日韩欧美综合在线视频| 在线视频观看91| 日本中文字幕在线一区| 最近2019中文字幕第三页视频| 欧美成人免费看| 免费永久网站黄欧美| 91免费精品国偷自产在线| 午夜影院免费体验区| 国产精品久久久久久一区二区三区 | 精品视频一区二区三区免费| 韩国三级在线看| 欧美日韩国产在线观看网站| 欧美精品xxx| 亚洲一级黄色大片| 91视频.com| 日韩视频一二三| 欧美精品高清| 欧美大黄免费观看| 女人黄色一级片| 亚洲国产专区| 444亚洲人体| av网站在线免费播放| 天天影视色香欲综合网老头| 国产又粗又长又爽又黄的视频| 亚洲美女15p| 97在线视频国产| 国产三级伦理片| 国产精品久久久久天堂| 日韩中文字幕组| 国产毛片精品| 欧美片一区二区三区| 一区二区三区亚洲视频| 中文欧美字幕免费| 凹凸日日摸日日碰夜夜爽1| 极品尤物一区| 欧美激情在线播放| va视频在线观看| 日韩一区在线免费观看| 久久婷五月综合| 精品国产123区| 国产成人jvid在线播放| 亚欧洲精品视频| 婷婷亚洲久悠悠色悠在线播放| 师生出轨h灌满了1v1| 在线观看日韩| http;//www.99re视频| 国产在线观看a| 欧美一区二区网站| 日韩一区二区不卡视频| 韩国成人在线视频| 91制片厂免费观看| 成人污版视频| 久久视频在线看| 99免费在线视频| 亚洲精品欧美综合四区| 色哟哟在线观看视频| 99热在线成人| 147欧美人体大胆444| 蜜桃av在线免费观看| 欧美一区二区三区四区久久| 国产精品精品视频| 国产精品久久久久久久久久久久久久久久久久 | 国产精品无码AV| 亚洲视频一区二区在线观看| 日本国产一级片| 欧美成人69av| 国产精品二区三区四区| 日韩电影免费看| 亚洲欧美在线免费观看| 中文字幕欧美在线观看| 亚洲丝袜精品丝袜在线| 91精品国产高清91久久久久久 | 五月婷婷深爱五月| 婷婷综合伊人| 国产精品久久久久久久久久久久午夜片 | 成人精品aaaa网站| 香蕉成人app免费看片| 精品国一区二区三区| 免费在线不卡视频| 国产人久久人人人人爽| 韩国一区二区在线播放| 伊人久久成人| 色女人综合av| 日韩欧美中文在线观看| 91精品国产九九九久久久亚洲| 毛片在线免费| 91精品在线麻豆| 国产成人在线观看网站| 中文字幕av资源一区| 又大又长粗又爽又黄少妇视频| 久久成人免费| 一级全黄肉体裸体全过程| 国产香蕉精品| 国产在线播放91| 精品捆绑调教一区二区三区| 日韩在线视频免费观看| 手机看片福利永久| 欧美精品一卡二卡| 中文字幕久久av| 成人性生交大片免费看网站| 欧美白人最猛性xxxxx69交| 无码人妻一区二区三区免费| 亚洲免费色视频| 国产精品无码久久久久久| 日韩精品一级中文字幕精品视频免费观看 | 欧美在线观看网址综合| 国产高清在线看| 精品欧美一区二区久久| 伊人精品在线视频| 狠狠躁夜夜躁人人躁婷婷91| 国产激情无码一区二区三区| 久久亚洲精华国产精华液| 久久发布国产伦子伦精品| 日韩不卡一区二区三区| 国产一区二区视频播放| 亚洲一本二本| 亚洲一区二区精品在线观看| 日本天堂一区| 国产精品一区二区在线观看| 在线观看亚洲精品福利片| 国产www精品| 男人av在线播放| 欧美国产在线电影| 中中文字幕av在线| 久久精品99久久久久久久久 | 开心激情综合| 风间由美一区二区三区| 视频欧美精品| 国产精品欧美日韩久久| 成人免费影院| 欧美在线视频一区二区| 国产盗摄一区二区| 欧美乱大交做爰xxxⅹ性3| 国产原创在线观看| www.色综合| 欧美激情午夜| www.久久撸.com| 免费a级毛片在线播放| 中文字幕日韩在线视频| 成人高潮成人免费观看| 国产一区二区三区精品久久久| 欧美性孕妇孕交| 日韩电影免费观看中文字幕| 欧美一级性视频| 亚洲精品一区在线观看| 亚洲精品成人电影| 亚洲成人精品av| 香蕉av在线播放| 日韩大陆毛片av| 九九热视频在线观看| 国产亚洲免费的视频看| 国产日本在线| 麻豆国产91在线播放| 天堂av免费看| 亚洲国产老妈| 中文字幕日韩精品无码内射| 欧美国产高清| 日本阿v视频在线观看| 最新日韩av| 成人午夜视频免费在线观看| 老司机亚洲精品| 777视频在线| 国产黄色精品网站| 国产伦精品一区二区免费| 99免费精品在线观看| 在线免费观看a级片| 久久久不卡网国产精品二区| 国产午夜精品福利视频| 综合激情成人伊人| 久久精品无码人妻| 欧美日韩中文字幕| 波多野结衣一区二区三区在线| 在线看国产一区二区| 97成人在线观看| 欧美xxxx在线观看| 欧美日韩伦理片| 日韩视频在线一区| 国产美女福利在线观看| 人九九综合九九宗合| 日本成人一区二区| 国产亚洲第一区| 欧美精品尤物在线观看| 一道本在线观看视频| 99亚洲精品| 国产探花在线看| jvid福利写真一区二区三区| 国产探花视频在线播放| 亚洲精品水蜜桃| 黄色av网站免费| 欧美成人精品福利| 国产小视频在线观看| 九九视频直播综合网| 国产精品迅雷| **亚洲第一综合导航网站| 国产成人短视频在线观看| 欧美日韩中文字幕在线播放| 另类av一区二区| 韩国三级丰满少妇高潮| 国产视频亚洲色图| 日本少妇久久久| 欧美丰满高潮xxxx喷水动漫| 天堂网av2014| 成年无码av片在线| 欧美中文字幕精在线不卡| 成人xxxxx色| 日韩精品午夜| 国产最新免费视频| 国产黄色精品视频| 波兰性xxxxx极品hd| 无码av免费一区二区三区试看| 91麻豆国产视频| 亚洲视频在线视频| 91美女精品| 亚洲伊人久久综合| 成人在线免费观看视频| 久久久久亚洲精品| 国产片在线播放| 亚洲精品97久久| www免费在线观看| 国产精品久久久久久久久久久久| 国产精品一区二区三区美女| 精品国产无码在线| 日韩电影一区二区三区四区| 国产精品第七页| 亚洲精品视频在线观看免费| 一道本无吗一区| 亚洲天堂第一页| 亚洲欧洲美洲av| 国产区一区二区三区| 欧美日韩国产色综合一二三四| 亚洲这里只有精品| 国产精品免费视频观看| 国产一区二区视频网站| 亚洲精品国产精品久久清纯直播| 免费看电影在线| 99国产超薄丝袜足j在线观看 | 永久免费毛片在线播放不卡| 深夜成人在线| 精品在线一区| 国产日韩欧美在线播放不卡| 成人在线电影网站| 亚洲午夜日本在线观看| 国产 日韩 欧美 综合| 九九热精品视频| y111111国产精品久久久| 菠萝蜜视频在线观看入口| 国产成人精品亚洲日本在线桃色 | 欧美三级视频在线观看| 第九色区av在线| 国产精品高清在线| 日本大胆欧美| 日本中文字幕二区| 亚洲色图欧美在线| 国产高清视频免费| 欧美激情va永久在线播放| www.亚洲一二| 成人在线免费在线观看| 久久嫩草精品久久久精品一| 日本中文字幕第一页| 亚洲欧美一区二区三区情侣bbw| 欧美无毛视频| 亚洲欧美日韩综合一区| 久久99国产精品成人| www青青草原| 亚洲国产精品热久久| 亚洲福利影院| 亚洲 国产 日韩 综合一区| 久久成人久久爱| 欧美黄色免费看| 亚洲国产91色在线| 性感美女一区二区在线观看| 亚洲7777| 国产二区国产一区在线观看| 国产无遮挡又黄又爽在线观看| 日韩精品视频三区| 国产成人免费精品| 天堂av在线中文| aaa国产一区| 中文字幕在线观看1| 欧美日韩国产123| 午夜精品福利影院| 97视频在线观看网址| 日韩影视在线| 女同一区二区| 狠狠色综合播放一区二区| 精品少妇theporn| 亚洲片av在线| 麻豆精品国产| 久久美女福利视频| 亚洲视频精选在线| 性感美女福利视频| 成人久久久久久久| 亚洲一区图片| 免费成年人视频在线观看| 日韩高清人体午夜| 香蕉久久一区| 日日橹狠狠爱欧美超碰| 国产精品乱人伦中文| 香蕉视频黄在线观看| 91免费版网站入口| 日韩一区欧美二区| 日本一区二区网站| 日韩视频―中文字幕| 天堂综合网久久| 色哟哟在线观看视频|