主頁(yè) > 知識(shí)庫(kù) > 解決docker容器啟動(dòng)后馬上退出的問(wèn)題

解決docker容器啟動(dòng)后馬上退出的問(wèn)題

熱門(mén)標(biāo)簽:美圖手機(jī) 智能手機(jī) 硅谷的囚徒呼叫中心 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 網(wǎng)站建設(shè) 使用U盤(pán)裝系統(tǒng) 檢查注冊(cè)表項(xiàng) 阿里云

最近在看docker如何讓容器在啟動(dòng)時(shí)直接運(yùn)行某些進(jìn)程,后來(lái)發(fā)現(xiàn)Dockerfile可以在容器啟動(dòng)的時(shí)候指定容器運(yùn)行命令。

CMD指定,但是每個(gè)Dockerfile只能有一條CMD指令,如果指定了多條CMD指定,只有最后一條會(huì)被執(zhí)行。

于是就想了一個(gè)辦法,在寫(xiě)了一個(gè)腳本,在腳本里面啟動(dòng)多個(gè)進(jìn)程,在Dockerfile里運(yùn)行這個(gè)腳本。

最后證明這個(gè)方法是可行的,在實(shí)驗(yàn)過(guò)程中遇到一個(gè)問(wèn)題,容器啟動(dòng)后會(huì)馬上停止。

經(jīng)查閱資料:

Docker容器同時(shí)只能管理一個(gè)進(jìn)程,如果這個(gè)進(jìn)程退出那么容器也就退出了,但這不表示容器只能運(yùn)行一個(gè)進(jìn)程(其他進(jìn)程可在后臺(tái)運(yùn)行),但是要使容器不退出必須有一個(gè)前臺(tái)執(zhí)行的進(jìn)程。

解決方法:

腳本中最后一個(gè)進(jìn)程一定要用前臺(tái)運(yùn)行方式即在進(jìn)程最后不加&(&表示后臺(tái)運(yùn)行),否則容器會(huì)退出。

補(bǔ)充知識(shí):在docker容器中使用gdbserver發(fā)生的問(wèn)題及解決辦法

在docker容器中使用gdbserver時(shí)遇到一個(gè)問(wèn)題

linux_ptrace_test_ret_to_nx: Cannot PTRACE_TRACEME:operation not permmit

原因是Docker默認(rèn)禁用PTRACE功能,需要在容器運(yùn)行時(shí)開(kāi)啟。

docker run -ti --cap-add=SYS_PTRACE ubuntu

以上這篇解決docker容器啟動(dòng)后馬上退出的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

標(biāo)簽:湖北 賀州 湘潭 山南 黃山 煙臺(tái) 懷化 通遼

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解決docker容器啟動(dòng)后馬上退出的問(wèn)題》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢(xún)

    • 400-1100-266