如何在后臺(脫離模式下)運行Docker容器
譯文【51CTO.com快譯】在Docker下,映像開發(fā)人員可以定義與脫離前臺運行的容器有關的映像默認值以及其他有用的設置。但是,使用docker run [OPTIONS]命令,你可以添加或覆蓋開發(fā)人員設置的映像默認值,因而更全面地控制容器的運行方式。
我們在本文中將簡要介紹運行容器的前臺模式和后臺模式,并介紹如何在脫離模式下在后臺運行Docker容器。
前臺模式(默認)與后臺/脫離模式
啟動Docker容器之前,你先要確定想在默認的前臺模式下運行容器,還是在脫離模式下在后臺運行容器。
在前臺模式下,Docker可以在容器中啟動進程,并將控制臺連接到進程的標準輸入、標準輸出和標準錯誤。
還有命令行選項來進一步配置,比如-t可為進程分配pseudo-tty,-i可保持STDIN打開,即使它沒有連接。你還可以使用-a=[value here]標志,將它連接到一個或多個文件描述符(STDIN、STDOUT及/或STDERR)。
重要的是,--rm選項告訴Docker在退出時自動刪除容器。該例子表明如何在前臺模式啟動Docker容器:
- # docker run --rm -ti -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
前臺模式下運行容器的缺點是,你無法再訪問命令提示符,如上面的屏幕截圖所示。這意味著容器運行時你無法運行任何其他命令。
想在后臺運行Docker容器,請使用-d=true選項或就使用-d選項。首先,按[Ctrl+C]阻止容器在前臺模式下運行,然后在脫離模式下運行,如下所示:
- # docker run -d --rm -p 8000:80 -p 8443:443 --name pandorafms pandorafms/pandorafms:latest
想列出所有容器,請運行以下命令(默認僅顯示運行中的容器)。
- # docker ps -a
此外,想重新連接到脫離的容器,請使用docker attach命令。
- # docker attach --name pandorafms
或者
- # docker attach 301aef99c1f3
如果你想停止上述容器或其他任何正在運行的容器,請使用以下命令(將301aef99c1f3換成實際的容器ID)。
- # docker stop 301aef99c1f3
原文標題:Run Docker Container in Background (Detached Mode),作者:Aaron Kili
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】