如何运行一个已经停止的容器并进入bash?
我是Docker的新手,我知道为了运行一个容器,我可以使用下面的命令:
docker run -it --name custom-container-name --hostname custom-hostname image-name bash
前面的命令创build一个名为custom-container-name
其中hostname是custom-hostname
,它使用图像image-name
。 我知道-it
标志让我可以访问bash
。 (如果我错了,请纠正我)
现在,我已经停止了这个容器,但是我想再次使用它,那么我应该使用什么命令来再次打开这个容器 ,就像我第一次运行docker run ...
命令一样。
我想你遇到的问题是,你提供的命令是立即退出,容器保持运行,它需要一个不会退出的命令。 我发现保持容器运行的一种方法是使用-d选项,如下所示:
docker run -dt --name custom-container-name --hostname custom-hostname image-name
这应该启动它在后台运行的守护进程。 然后你可以在容器中打开一个shell:
docker exec -it custom-container-name /bin/bash
如果映像的默认用户是root(或未设置),则应为您提供容器中的根shell。
您可以使用docker inspect来查看映像的详细信息,以查看默认命令和用户是什么:
docker inspect image-name | less
另外,如果您的容器存在,并且其状态为“已退出”,则可以启动该容器,然后使用docker exec
,如下所示:
docker start custom-container-name docker exec -it custom-container-name /bin/bash