成人AV在线无码|婷婷五月激情色,|伊人加勒比二三四区|国产一区激情都市|亚洲AV无码电影|日av韩av无码|天堂在线亚洲Av|无码一区二区影院|成人无码毛片AV|超碰在线看中文字幕

docker執(zhí)行命令后自動退出 如何避免Docker容器啟動腳本運行后自動退出?

如何避免Docker容器啟動腳本運行后自動退出?避免自動退出的解決方案在運行docker容器啟動腳本后,docker run指定的命令如果不是已掛起的命令(如運行top和不斷回音),將自動退出。-“d

如何避免Docker容器啟動腳本運行后自動退出?

避免自動退出的解決方案在運行docker容器啟動腳本后,docker run指定的命令如果不是已掛起的命令(如運行top和不斷回音),將自動退出。-“d”命令將“detach”設(shè)置為true。根據(jù)官方文件,這意味著讓這個命令在后臺運行,但它并不是一直運行的(我們在普通的Linux終端上運行/bin/bash,運行后就會完成,而且我們不會一直等待響應(yīng),所以我們真的不能以“守護進程”的方式運行/bin/bash)。這個地方的早期和現(xiàn)在的官方文件確實有些不一致?,F(xiàn)在是分離。早期的文檔說指定-D以守護進程的方式運行容器可能有一些誤解。另外,如果需要在容器中運行bash,可以直接運行docker run-I-t containeruname/bin/bash。如果您認為docker attach的參數(shù)多于docker attach,則可以設(shè)置別名來解決此問題:

如何避免Docker容器啟動腳本運行后自動退出?

運行多進程docker容器的方法如下:1。使用shell腳本依次啟動kubernetes的每個組件。以下是開始-庫伯內(nèi)特斯.sh2,然后在dockerfile中,開始-庫伯內(nèi)特斯.sh指定默認情況下要為docker容器執(zhí)行的命令。三。需要注意的一點是開始-庫伯內(nèi)特斯.sh腳本將作為docker容器的1號進程運行,并且必須始終運行。因為docker容器只在進程1運行時保持運行,換句話說,docker容器將在進程1退出后退出。因為kubernetes的每個組件都是作為后臺進程執(zhí)行的,所以在腳本的末尾添加了一個死循環(huán)以保持啟動-庫伯內(nèi)特斯.sh腳本始終在運行。4主管是一種過程管理工具。此時,需要編寫管理器配置文件庫伯內(nèi)特斯.conf: 5. 將kubernetes的每個組件的啟動命令設(shè)置為command。將autorestart參數(shù)設(shè)置為true意味著supervisor將負責重新啟動意外退出的組件。stdout Logfile和stderr Logfile參數(shù)可用于設(shè)置命令的標準輸出文件和標準錯誤輸出文件。6然后,在dockerfile中,指定supervisor作為docker容器的默認命令:7。此時,supervisor是docker容器中的第一個進程,它還需要繼續(xù)運行。當nodaemon設(shè)置為true時,supervisor將保持在前臺而不是后臺運行。如果supervisor在后臺運行,則在執(zhí)行supervisor命令后,docker容器將立即退出