2016-09-23 72 views
13

我推出一个码头工人的容器从图像使用以下命令:如何重新启动已停止的码头工人容器

$ docker run -d myimage /bin/bash -c "mycommand" 

"mycommand"结束后,容器停止(我想这已停止),但它不是删除了,因为我可以用这个命令来查看它:

$ docker ps -a 

有什么办法来restart这个容器使用相同的参数,并保持由mycommand产生的数据?

+0

是否“音量”或“安装主机目录”满足你吗?像提到的文档一样:https://docs.docker.com/engine/tutorials/dockervolumes/ –

回答

14

是,当初始命令完成其执行则容器停止。

可以使用启动已停止容器:

docker start container_name

如果你想看到你的命令的输出,那么你应该增加-ai选项:

docker start -ai container_name

PS。有一个docker restart container_name而是用于重新启动运行的容器 - 我相信这不是你的情况。

1

首先,$ docker ps -a显示所有容器(正在运行的那些和停止的),所以这就是你看到你的容器停止上市的原因。

$ docker start container_name 

一旦容器已经启动,您可以运行你的命令:

$ docker exec -it container_name bash -c "mycommand" 

你在容器中创建的东西

其次,你可以很容易地启动停止容器只要存在,就会保留在您的容器内。如果你想保留数据,即使你的容器被删除,你可以使用volume

相关问题