考虑:

docker run -it centos /bin/bash

我按Ctrl+D退出。

我想继续运行这个容器,但我发现我做不到。

唯一的方法是

docker commit `docker ps -q -l` my_image
docker run -it my_image /bin/bash

我说的对吗?有没有更好的方法?(我使用docker 0.8.0。)


当前回答

docker start -a -i `docker ps -q -l`

解释:

docker启动一个容器(需要名称或ID) -连接到容器 -i交互模式 docker ps列出容器 -q只列出容器id -l只列出上次创建的容器

其他回答

Use:

docker start $(docker ps -a -q --filter "status=exited")

这将启动处于退出状态的所有容器。

docker exec -it <container-id> /bin/bash

这将连接到特定的容器。

docker start -a -i `docker ps -q -l`

解释:

docker启动一个容器(需要名称或ID) -连接到容器 -i交互模式 docker ps列出容器 -q只列出容器id -l只列出上次创建的容器

如果你只想启动一个状态为“Exited”的容器,只需输入:

sudo docker start container_name

没有sudo。查看更多

docker start container_name

如果容器名称不起作用,则将名称替换为容器id

对于那些在2021年及以后来到这里的人来说,下面的命令将完成接受的答案将在一行中完成的工作。

$ docker start -ai $(docker ps -q -l)

如果你想继续使用一个已知名称的Docker容器:

docker start  `docker ps -a -q --filter "name=elas"`