Docker 退出container后保持繼續(xù)運(yùn)行的操作
運(yùn)行一個(gè)image,例如ubuntu14.04:
docker run -it --rm ubuntu:14.04 bash退出時(shí):
執(zhí)行Ctrl+D或者執(zhí)行exit
查看線程:
docker ps
發(fā)現(xiàn)為空,說明沒有正在運(yùn)行的容器。
解決方法:運(yùn)行一個(gè)image:
docker run -dit ubuntu:14.04
查看線程:
發(fā)現(xiàn)有一個(gè)線程,打開它:
docker attach 【CONTAINER ID或NAMES】
退出時(shí)如果想繼續(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的時(shí)候,是在后臺執(zhí)行的;因此,在shell執(zhí)行完成以后,docker檢測到?jīng)]有前臺任務(wù)需要執(zhí)行,便退出container.
解決方法在shell腳本的最后加上一個(gè)“永遠(yuǎn)完成不了”的命令:
# tail -f /dev/null
這樣當(dāng)執(zhí)行到這條命令的時(shí)候,shell便不會退出,container也不會退出。
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章:
1. python使用ctypes庫調(diào)用DLL動態(tài)鏈接庫2. Python使用shutil模塊實(shí)現(xiàn)文件拷貝3. 初學(xué)者學(xué)習(xí)Python好還是Java好4. Python實(shí)現(xiàn)迪杰斯特拉算法過程解析5. python中sklearn的pipeline模塊實(shí)例詳解6. 詳解Python模塊化編程與裝飾器7. Python字符串函數(shù)strip()原理及用法詳解8. python裝飾器三種裝飾模式的簡單分析9. Python如何進(jìn)行時(shí)間處理10. python web框架的總結(jié)
