衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

最常見的退出碼介紹

馬哥Linux運(yùn)維 ? 來源:馬哥Linux運(yùn)維 ? 作者:馬哥Linux運(yùn)維 ? 2022-08-02 09:57 ? 次閱讀

為什么我的容器沒有運(yùn)行?

回答這個(gè)問題需要知道 Docker 容器為什么退出,退出碼會(huì)提示容器停止運(yùn)行的情況。本文列出了最常見的退出碼,來回答兩個(gè)重要問題:

這些退出碼是什么意思?

導(dǎo)致該退出碼的動(dòng)作是什么?

exit code:代表一個(gè)進(jìn)程的返回碼,通過系統(tǒng)調(diào)用 exit_group 來觸發(fā)。在 POSIX 中,0 代表正常的返回碼,而 1-255 代表異常返回碼,不過一般錯(cuò)誤碼都是 1。這里有一張附表 Appendix E. Exit Codes With Special Meanings

如何查看退出碼

方法一:查看 pod 中的容器退出碼

$kubectldescribepodxxx

74a515f8-11a5-11ed-ba43-dac502259ad0.jpg

方法二:用 Docker 查看

$ dockerps--filter"status=exited"
$ dockerinspect--format='{{.State.ExitCode}}'

方法三:手動(dòng)輸出

$ dockercontainerrunalpinesh-c"exit1"

$dockercontainerls-a

CONTAINERIDIMAGECOMMANDCREATEDSTATUS
61c688005b3aalpine"sh-c'exit1'"AboutaminuteagoExited(1)3secondsago

常見退出碼

Exit Code 0

退出代碼0表示特定容器沒有附加前臺(tái)進(jìn)程。

該退出代碼是所有其他后續(xù)退出代碼的例外。

這不一定意味著發(fā)生了不好的事情。如果開發(fā)人員想要在容器完成其工作后自動(dòng)停止其容器,則使用此退出代碼。

如果你執(zhí)行 docker run hello-world, 你會(huì)得到“Hello from docker!”,但查看容器的時(shí)候docker ps -a | grep hello-world,會(huì)發(fā)現(xiàn)狀態(tài)碼為 0

74b736d4-11a5-11ed-ba43-dac502259ad0.jpg

Exit Code 1

程序錯(cuò)誤,或者 Dockerfile 中引用不存在的文件,如 entrypoint 中引用了錯(cuò)誤的包

程序錯(cuò)誤可以很簡單,例如 “除以0”,也可以很復(fù)雜,比如空引用或者其他程序 crash

Exit Code 137

表明容器收到了 SIGKILL 信號(hào),進(jìn)程被殺掉,對(duì)應(yīng) kill -9

引發(fā) SIGKILL 的是 Docker Kill。這可以由用戶或由 Docker 守護(hù)程序來發(fā)起,手動(dòng)執(zhí)行:docker kill

137 比較常見,如果 pod 中的 limit 資源設(shè)置較小,會(huì)運(yùn)行內(nèi)存不足導(dǎo)致 OOMKilled,此時(shí) state 中的 "OOMKilled" 值為 true,你可以在系統(tǒng)的 dmesg 中看到 oom 日志

Exit Code 139

表明容器收到了 SIGSEGV 信號(hào),無效的內(nèi)存引用,對(duì)應(yīng) kill -11

一般是代碼有問題,或者 docker 的基礎(chǔ)鏡像有問題

Exit Code 143

表明容器收到了 SIGTERM 信號(hào),終端關(guān)閉,對(duì)應(yīng) kill -15

一般對(duì)應(yīng) docker stop 命令

有時(shí) docker stop 也會(huì)導(dǎo)致 Exit Code 137。發(fā)生在與代碼無法處理 SIGTERM 的情況下,docker 進(jìn)程等待十秒鐘然后發(fā)出 SIGKILL 強(qiáng)制退出。

不常用的一些 Exit Code

Exit Code 126: 權(quán)限問題或命令不可執(zhí)行

Exit Code 127: Shell 腳本中可能出現(xiàn)錯(cuò)字且字符無法識(shí)別的情況

Exit Code 1 或 255:因?yàn)楹芏?a href="http://www.zgszdi.cn/v/tag/1730/" target="_blank">程序員寫異常退出時(shí)習(xí)慣用 exit(1) 或 exit(-1),-1 會(huì)根據(jù)轉(zhuǎn)換規(guī)則轉(zhuǎn)成 255。這個(gè)一般是自定義 code,要看具體邏輯。

退出狀態(tài)碼的區(qū)間

必須在 0-255 之間,0 表示正常退出

外界將程序中斷退出,狀態(tài)碼在 129-255

程序自身異常退出,狀態(tài)碼一般在 1-128

假如寫代碼指定的退出狀態(tài)碼時(shí)不在 0-255 之間,例如: exit(-1),這時(shí)會(huì)自動(dòng)做一個(gè)轉(zhuǎn)換,最終呈現(xiàn)的狀態(tài)碼還是會(huì)在 0-255 之間。我們把狀態(tài)碼記為 code,當(dāng)指定的退出時(shí)狀態(tài)碼為負(fù)數(shù),那么轉(zhuǎn)換公式如下:256 – (|code| % 256)

審核編輯:彭靜
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3796

    瀏覽量

    81420
  • 容器
    +關(guān)注

    關(guān)注

    0

    文章

    499

    瀏覽量

    22125
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4828

    瀏覽量

    69063

原文標(biāo)題:理解 Docker 容器退出碼

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    常見新大陸二維碼掃描模組模塊型號(hào)有哪些?各有什么特點(diǎn)

    的效率和準(zhǔn)確性。以下,我們將簡要介紹幾款常見的新大陸二維掃描模組型號(hào)及其顯著特點(diǎn)。1.NLS-N1系列微型掃描模組NLS-N1系列是新大陸專為空間受限環(huán)境設(shè)計(jì)的微型二維掃描模組。該
    的頭像 發(fā)表于 01-10 00:00 ?118次閱讀
    <b class='flag-5'>常見新大陸二維碼</b>掃描模組模塊型號(hào)有哪些?各有什么特點(diǎn)

    關(guān)于如何解決MOS常見問題的方案參考

    因素的影響,導(dǎo)致各種常見問題出現(xiàn),影響電路的穩(wěn)定性和可靠性。這里給大家介紹一些常見的MOS問題的解決方案參考:1.MOSFET的熱管理問題MOSFET的熱問題是最常見
    的頭像 發(fā)表于 12-03 17:05 ?572次閱讀
    關(guān)于如何解決MOS<b class='flag-5'>常見</b>問題的方案參考

    無線智能遙控開關(guān)怎么對(duì)

    與接收器之間的配對(duì),確保信號(hào)的準(zhǔn)確傳輸。 無線智能遙控開關(guān)對(duì)的重要性 在詳細(xì)介紹無線智能遙控開關(guān)對(duì)的步驟之前,我們首先需要了解對(duì)的重要性。對(duì)
    的頭像 發(fā)表于 10-12 18:12 ?2463次閱讀

    生產(chǎn)線用條碼讀介紹

    工業(yè)讀器是一種專門用于讀取各種條碼信息的工業(yè)設(shè)備。在工業(yè)應(yīng)用中,讀器經(jīng)常用于自動(dòng)識(shí)別產(chǎn)品、包裝和配件上的編碼信息,以支持物料管理、生產(chǎn)計(jì)劃、物流和配送的自動(dòng)化。常見的工業(yè)條碼閱讀器包括激光讀
    的頭像 發(fā)表于 08-29 15:50 ?270次閱讀
    生產(chǎn)線用條碼讀<b class='flag-5'>碼</b>器<b class='flag-5'>介紹</b>

    新大陸掃器哪款能夠識(shí)別DPM?新大陸二維介紹

    隨著工業(yè)自動(dòng)化的不斷發(fā)展,二維和數(shù)據(jù)矩陣(DPM)在生產(chǎn)、物流和倉儲(chǔ)等領(lǐng)域的應(yīng)用越來越廣泛。DPM因其高密度和小體積的特點(diǎn),常常被應(yīng)用于金屬、塑料等各種材料的直接標(biāo)記。這就對(duì)掃
    的頭像 發(fā)表于 07-29 14:36 ?450次閱讀
    新大陸掃<b class='flag-5'>碼</b>器哪款能夠識(shí)別DPM<b class='flag-5'>碼</b>?新大陸二維<b class='flag-5'>碼</b>掃<b class='flag-5'>碼</b>器<b class='flag-5'>介紹</b>

    常見的變頻器故障及故障處理方法詳解

    有效的處理,一般情況下變頻器的故障都會(huì)報(bào)出相應(yīng)的故障代碼,對(duì)照著故障代碼表就可以快速的判斷變頻器故障,今天來學(xué)習(xí)一下變頻器常見的故障及故障處理方法。 ? ? ?1、故障代碼:OCF(變頻器過電流故障) ? ? ?產(chǎn)生故障的原因:電動(dòng)機(jī)銘
    的頭像 發(fā)表于 07-08 09:06 ?9353次閱讀

    功能測(cè)試覆蓋中最常見的是什么方法

    功能測(cè)試覆蓋是軟件測(cè)試過程中的一個(gè)重要環(huán)節(jié),它主要關(guān)注軟件產(chǎn)品的功能實(shí)現(xiàn)是否符合需求規(guī)格說明。在功能測(cè)試覆蓋中,有多種方法可以采用,以確保測(cè)試的全面性和有效性。本文將詳細(xì)介紹功能測(cè)試覆蓋中最常見
    的頭像 發(fā)表于 05-30 14:55 ?838次閱讀

    常見的光纖接口介紹

    在現(xiàn)代通信和網(wǎng)絡(luò)技術(shù)中,光纖接口扮演著至關(guān)重要的角色。它們不僅是連接光纖線纜和設(shè)備的橋梁,還承載著高速、大容量數(shù)據(jù)傳輸?shù)闹匾蝿?wù)。本文將詳細(xì)介紹幾種常見的光纖接口類型,包括它們的特點(diǎn)、應(yīng)用場(chǎng)景、技術(shù)規(guī)格等方面的內(nèi)容。
    的頭像 發(fā)表于 05-29 16:08 ?2272次閱讀

    常見的網(wǎng)絡(luò)接口介紹

    在現(xiàn)今的數(shù)字化時(shí)代,網(wǎng)絡(luò)接口作為連接各種設(shè)備和網(wǎng)絡(luò)的橋梁,其重要性不言而喻。網(wǎng)絡(luò)接口不僅關(guān)系到數(shù)據(jù)傳輸?shù)乃俾屎唾|(zhì)量,還影響著整個(gè)網(wǎng)絡(luò)的穩(wěn)定性和安全性。因此,了解和選擇合適的網(wǎng)絡(luò)接口對(duì)于保證網(wǎng)絡(luò)的正常運(yùn)行至關(guān)重要。本文將對(duì)常見的網(wǎng)絡(luò)接口進(jìn)行詳細(xì)介紹,包括其類型、特點(diǎn)、應(yīng)用場(chǎng)
    的頭像 發(fā)表于 05-29 16:07 ?2149次閱讀

    PCB板的顏色應(yīng)該怎么選?為什么綠色最常見

    使用的,更為人熟悉。但是不同的PCB我們應(yīng)該怎么去選擇PCB的顏色呢,為什么綠色更常用呢?1綠色PCB板綠色是最常見的PCB顏色,也是最經(jīng)濟(jì)、使用最廣泛的選擇。這是因?yàn)樵趥?/div>
    的頭像 發(fā)表于 05-10 08:20 ?1118次閱讀
    PCB板的顏色應(yīng)該怎么選?為什么綠色<b class='flag-5'>最常見</b>?

    二維模塊嵌入到電梯設(shè)備里

    二維模塊在電梯設(shè)備中的應(yīng)用1.二維模塊的基本介紹二維
    的頭像 發(fā)表于 05-08 10:40 ?400次閱讀
    二維<b class='flag-5'>碼</b>掃<b class='flag-5'>碼</b>模塊嵌入到電梯設(shè)備里

    Ubuntu系統(tǒng)常見問題及解答

    今天小編為大家總結(jié)了Ubuntu系統(tǒng)常見問題的解決方法,便于收藏和查閱,大家快快住哦~
    的頭像 發(fā)表于 04-19 12:29 ?1367次閱讀
    Ubuntu系統(tǒng)<b class='flag-5'>常見</b>問題及解答

    電子束光刻的參數(shù)優(yōu)化及常見問題介紹

    本文從光刻圖案設(shè)計(jì)、特征尺寸、電鏡參數(shù)優(yōu)化等方面介紹電子束光刻的參數(shù)優(yōu)化,最后介紹了一些常見問題。
    的頭像 發(fā)表于 03-17 14:33 ?1260次閱讀
    電子束光刻的參數(shù)優(yōu)化及<b class='flag-5'>常見</b>問題<b class='flag-5'>介紹</b>

    工業(yè)制造行業(yè)中的DPM識(shí)讀要如何選擇固定讀器?

    在工業(yè)制造行業(yè)中,DPM是一種常見的標(biāo)識(shí)方式,它是將信息直接標(biāo)記在產(chǎn)品表面上,以便在生產(chǎn)過程中進(jìn)行追蹤和識(shí)別。不言而喻,在如今的產(chǎn)品質(zhì)量追溯管理應(yīng)用上,需要對(duì)多種復(fù)雜條碼進(jìn)行識(shí)別讀取,其中就包括了
    的頭像 發(fā)表于 03-06 13:52 ?716次閱讀
    工業(yè)制造行業(yè)中的DPM<b class='flag-5'>碼</b>識(shí)讀要如何選擇固定讀<b class='flag-5'>碼</b>器?

    sim卡pin怎么設(shè)置 pin和puk有什么區(qū)別

    可以設(shè)置一個(gè)PIN以及一個(gè)PUK。PIN是個(gè)人識(shí)別(Personal Identification Number),PUK是個(gè)人解
    的頭像 發(fā)表于 02-19 16:20 ?5289次閱讀
    巍山| 综合百家乐博彩论坛| 网上真钱斗地主| 澳门百家乐官网有没有假| 百家乐官网百博| 百家乐下注技巧| 百家乐官网网络游戏平台| 永利百家乐官网娱乐| 大佬百家乐现金网| 娱乐城棋牌| 百家乐手机投注平台| 明升| 百家乐咋个玩的| 现金轮盘游戏| 百乐坊百家乐游戏| 宁夏| 百家乐suncity| 百家乐官网澳门路规则| 极速百家乐真人视讯| 太阳城百家乐官网网上| 新全讯网3344111.c| 百家乐官网讯特| 百家乐庄闲桌| 万达百家乐官网娱乐城| 娱乐城开户彩金| 24山可以正针吗| 盈丰国际平台| 博E百百家乐官网的玩法技巧和规则| 大发888游戏平台dafa888 gw| 博彩网百家乐官网的玩法技巧和规则 | 聚龍社百家乐的玩法技巧和规则 | 百家乐官网电投| 全讯网高手论坛| 新加坡百家乐官网规则| 南雄市| 百家乐如何制| 肯博百家乐官网现金网| 百家乐社区| 网上百家乐投注法| 最新百家乐官网电脑游戏机| 众发娱乐城|