Docker run 後自動關閉 解決方式

有些 docker container 一執行後馬上就自動關閉,這是為什麼?
因為 docker 容器必須要有一個前台處理程序,如果沒有任何處理程序在執行,就會被認為是空閒,就自動被關閉了。

平時我們在背景執行容器的語法如下: (使用 ubuntu:22.04 image, 指定容器名稱為 ubuntu)
    
docker run -d --name ubuntu ubuntu:22.04
    

但是我們可以加上 tail -f /dev/null 指令,tail -f 的意思是顯示檔案最後的部分,並持續更新。而 /dev/null 則是代表一個特殊的空檔案,若將內容寫入此檔案會被自動丟棄。所以整個指令的用途就是持續追蹤空檔案,沒有任何作用,但是可以讓 docker 以最低資源持續存在。

整個指令如下:
    
docker run -d --name ubuntu ubuntu:22.04 tail -f /dev/null
    

留言