Docker 退出container后保持繼續(xù)運(yùn)行的操作
現(xiàn)象:
運(yùn)行一個image,例如ubuntu14.04:
docker run -it --rm ubuntu:14.04 bash
退出時:
執(zhí)行Ctrl+D或者執(zhí)行exit
查看線程:
docker ps
發(fā)現(xiàn)為空,說明沒有正在運(yùn)行的容器。
解決方法:
運(yùn)行一個image:
docker run -dit ubuntu:14.04
查看線程:
發(fā)現(xiàn)有一個線程,打開它:
docker attach 【CONTAINER ID或NAMES】
退出時如果想繼續(xù)運(yùn)行:按順序按【ctrl+p】,【ctrl+q】
如果不想繼續(xù)運(yùn)行:按【ctrl+d】或輸入exit
另:關(guān)閉后重啟請輸入:docker restart 【CONTAINER ID或NAMES】
補(bǔ)充:Docker - 避免啟動container后運(yùn)行shell腳本執(zhí)行完成后docker退出container
最近在使用 Dockerfile 啟動容器,發(fā)現(xiàn)使用Dockerfile調(diào)用容器里面的shell,當(dāng)shell執(zhí)行完成以后,docker會退出容器。
分析
Docker 在執(zhí)行shell的時候,是在后臺執(zhí)行的;因此,在shell執(zhí)行完成以后,docker檢測到?jīng)]有前臺任務(wù)需要執(zhí)行,便退出container.
解決方法
在shell腳本的最后加上一個“永遠(yuǎn)完成不了”的命令:
# tail -f /dev/null
這樣當(dāng)執(zhí)行到這條命令的時候,shell便不會退出,container也不會退出。
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持本站。如有錯誤或未考慮完全的地方,望不吝賜教。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。