Docker容器執行後退出,怎麼才能一直執行?

2021-09-28 06:35:34 字數 766 閱讀 1199

現象

啟動docker容器

docker run –name [container_name] [container_id]

檢視容器執行狀態

docker ps -a

發現剛剛啟動的mydocker容器已經退出

原因很重要的要說明的一點: docker容器後台執行,就必須有乙個前台程序.

容器執行的命令如果不是那些一直掛起的命令(比如執行top,tail),就是會自動退出的

docker容器的主線程(dockfile中cmd執行的命令)結束,容器會退出

解決方法

可以使用互動式啟動

docker run -i [container_name or container_id]

上面的不太友好,建議使用後台模式和tty選項

docker run -dit [container_name or container_id]

檢視容器狀態

docker ps -a

docker調出後台容器

docker attach [container_name or container_id]

tips:退出時,使用[ctrl + d],這樣會結束docker當前執行緒,容器結束,可以使用[ctrl + p][ctrl + q]退出而不終止容器執行

如下命令,會在指定容器中執行指定命令,[ctrl+d]退出後不會終止容器執行

docker exec -it [container_name or container_id] /bin/bash

docker容器執行後退出,怎麼才能一直執行?

概述nsenter安裝 curl linux utils util linux v2.24 util linux 2.24.tar.gz tar zxf cd util linux 2.24 configure without ncurses make nsenter sudo cp nsenter...

docker容器保持執行不退出

nsenter工具進入docker容器 概述對於執行在後台的docker容器,我們經常需要做的事情是進入到容器中,docker為我們提供了docker exec docker attach 命令,並且還提供了nsenter工具,外部工具供我們使用。docker attach存在的問題是 當多個視窗同...

Docker 退出容器和進入容器

執行容器 docker run it 映象名 bin bash 退出容器 exit 或者ctrl p q 檢視容器 docker ps a 檢視執行的容器 docker ps 重啟容器 docker restart 容器id 重啟容器後進入互動式 docker start i 5c6ce895b97...