成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

一次詭異的docker錯誤調(diào)試

Jeff / 2603人閱讀

摘要:源自小伙伴的求助,雖然沒能定位到最終的原因,調(diào)試的過程也比較有意思緣起小伙伴求助我,同一個鏡像在測試機器上可以運行,在阿里云上運行提示用戶不存在。

源自小伙伴的求助,雖然沒能定位到最終的原因,調(diào)試的過程也比較有意思
緣起

小伙伴求助我,同一個docker鏡像在測試機器上可以運行,在阿里云上運行提示用戶不存在。

在阿里云上運行提示如下:

# docker run --rm -it image:tag
docker: Error response from daemon: linux spec user: unable to find user www-data: no matching entries in passwd file.
ERRO[0000] error waiting for container: context canceled

鏡像名稱統(tǒng)一使用image:tag代替,其實錯誤和鏡像的關(guān)系不大

從錯誤描述看:應(yīng)該是在/etc/passwd中未能找到www-data這個用戶,判斷用戶不存在

調(diào)試過程

換成用root啟動,依然提示找不到用戶

# docker run --rm -it --user root image:tag
docker: Error response from daemon: linux spec user: unable to find user root: no matching entries in passwd file.

看來root也要在/etc/passwd里面找


換一種方式啟動,錯誤提示變了

# docker run --rm -it --user $(id -u) image:tag
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: "docker-php-entrypoint": executable file not found in $PATH": unknown.

看來鏡像設(shè)置有entrypoint

但是為什么找不到entrypoint


換一個entrypoint試試看

# docker run --rm -it --user $(id -u) --entrypoint "ls" image:tag
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: "ls": executable file not found in $PATH": unknown.

ls也找不到?那用/bin/ls試試看


# docker run --rm -it --user $(id -u) --entrypoint "/bin/ls" image:tag
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: "/bin/ls": stat /bin/ls: no such file or directory": unknown.

這次錯誤提示換了,找不到/bin/ls

懷疑是文件系統(tǒng)錯誤,整個/下的文件都找不到


/bin/ls掛載到容器內(nèi)試試

# docker run --rm -it --user $(id -u) -v "/bin/ls":"/bin/ls" --entrypoint "/bin/ls" image:tag
standard_init_linux.go:190: exec user process caused "no such file or directory"

基本可以確定是docker內(nèi)文件系統(tǒng)掛了

山窮水盡

暫時沒找到辦法進一步的追蹤。通過docker inspectdocker history均看不出鏡像的異常。

通過docker logs也看不到容器啟動中的其他錯誤。

柳暗花明

別的小伙伴幫忙找到了這個issue: Error response from daemon: OCI runtime create failed - when running a Node.js Docker image

雖然錯誤類型不太一致,發(fā)現(xiàn)我一直忘記查看docker daemon的日志?。。?!

通過journalctl -fu docker.service查看錯誤日志,發(fā)現(xiàn)和issue中的錯誤一致。

... level=error msg="stream copy error: reading from a closed fifo"

可能是docker的一個未修復(fù)的BUG。

TODO

為何--user root時會查找passwd文件,--user $(id -u)可以跳過passwd文件

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/27778.html

相關(guān)文章

  • 關(guān)于 Lumen 無輸出 HTTP 狀態(tài)碼為 500 詭異錯誤

    摘要:關(guān)于無輸出錯誤最近接入支付寶支付時遇到一個問題,在做支付回調(diào)函數(shù)的時候我先是寫了一個用來記錄回調(diào)時的支付寶請求參數(shù),但發(fā)現(xiàn)無論如何日志都沒有任何記錄,而且回調(diào)函數(shù)里面的東西也沒用執(zhí)行,于是我自己請求該回調(diào)地址,發(fā)現(xiàn)服務(wù)器上狀態(tài)碼為但是沒有 關(guān)于LUMEN無輸出500錯誤 最近接入支付寶支付時遇到一個問題,在做支付回調(diào)函數(shù)的時候我先是寫了一個 Log::info(alipay_notif...

    dayday_up 評論0 收藏0
  • PHP 一個詭異加法算法研究

    摘要:然而實際上,這個結(jié)果反而是正確的。結(jié)論我認為出現(xiàn)這種詭異的結(jié)果應(yīng)該算是的,同時,這也說明了此種問題不太容易被發(fā)現(xiàn)和暴露,這要求我們平常寫代碼的時候盡量使用常用的語法,和精干的語句,讓代碼和邏輯達到最佳的平衡點。 前言 之前我在面試的時候,遇到許多年輕人都聲稱自己精通php,有過許多項目經(jīng)驗等等。然而,當(dāng)真正筆試的時候,我問到 $result=1; if(-1){ $result=2;...

    gekylin 評論0 收藏0
  • 淺談docker

    摘要:另外一個原因是企業(yè)文化是否與運動一致,只有企業(yè)支持,才能更大地發(fā)揮的價值。最后一個原因就是安全性問題,對于這一層的安全的隔離還有待改進,才能進一步得到企業(yè)的認可?;萜談⑵G凱認為,這也是需要在下一步中改進的一方面。 前言云計算、大數(shù)據(jù),移動技術(shù)的快速發(fā)展,加之企業(yè)業(yè)務(wù)需求的不斷變化,導(dǎo)致企業(yè)架構(gòu)要隨時更改以適合業(yè)務(wù)需求,跟上技術(shù)更新的步伐。毫無疑問,這些重擔(dān)都將壓在企業(yè)開發(fā)人員身上;團隊...

    MoAir 評論0 收藏0
  • 淺談docker

    摘要:另外一個原因是企業(yè)文化是否與運動一致,只有企業(yè)支持,才能更大地發(fā)揮的價值。最后一個原因就是安全性問題,對于這一層的安全的隔離還有待改進,才能進一步得到企業(yè)的認可。惠普劉艷凱認為,這也是需要在下一步中改進的一方面。 前言云計算、大數(shù)據(jù),移動技術(shù)的快速發(fā)展,加之企業(yè)業(yè)務(wù)需求的不斷變化,導(dǎo)致企業(yè)架構(gòu)要隨時更改以適合業(yè)務(wù)需求,跟上技術(shù)更新的步伐。毫無疑問,這些重擔(dān)都將壓在企業(yè)開發(fā)人員身上;團隊...

    nidaye 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<