Docker为您提供了一种列出正在运行的容器或所有容器(包括停止的容器)的方法。
这可以通过以下方式实现:
$ docker ps # To list running containers
或者
$ docker ps -a # To list running and stopped containers
我们是否有办法只列出已停止的容器?
docker container list -f "status=exited"
或者
docker container ls -f "status=exited"
或者
docker ps -f "status=exited"
典型的命令是:
docker container ls -f 'status=exited'
但是,这将只列出可能的非运行状态之一。以下是所有可能状态的列表:
通过对状态传递多个筛选器,可以对多个状态进行筛选:
docker container ls -f 'status=exited' -f 'status=dead' -f 'status=created'
如果要将其与自动清理脚本集成,则可以使用一些bash语法将一个命令链接到另一个命令,使用-q
仅输出容器id,还可以使用退出代码过滤器仅限制成功退出的容器:
docker container rm $(docker container ls -q -f 'status=exited' -f 'exited=0')
有关可以使用的过滤器的更多详细信息,请参阅Docker的留档:https://docs.docker.com/engine/reference/commandline/ps/#filtering
Docker为您提供了一种列出正在运行的容器或所有容器(包括停止的容器)的方法。 这可以通过以下方式实现: 或者 我们是否有办法只列出已停止的容器?
这个问题展示了如何从停止的容器中复制文件。这要求我知道文件的完整路径,包括其文件名。我知道要从中复制文件的目录,但我不知道它的文件名,因为它是动态生成的。如何列出已停止Docker容器中目录中的文件? 如果Docker容器正在运行,那么下面的Docker命令非常有效。但是,如果Docker容器停止,它将失败。 注意:文件不存储在持久卷中。
我试图在docker容器中调出我的MySql。但是,它在代码退出(1)的情况下停止了。下面是我的运行方式: 这是容器的日志 请帮帮我...
尝试停止或重新启动docker容器时,我收到以下错误消息: 但当我跑的时候 我可以看到日志,所以很明显容器确实存在。有什么想法吗? 编辑: 对不起,我忘了提这个: 当我运行时,我看到容器已经启动并正在运行。但是其中的应用程序出现故障,所以我想重新启动它,或者只是在线获取该应用程序的新版本。但是当我无法停止并删除容器时,我也无法启动并运行一个新应用程序,这将监听相同的端口。
问题内容: 直到最近,当一个人正在处理一堆容器并且其中一个启动的容器停止时,所有容器都停止了。自从https://github.com/docker/compose/issues/741以来,情况就不再如此了,这对我们来说真的很烦人:我们使用docker- compose运行selenium测试,这意味着启动应用程序服务器,启动selenium hub +节点,启动测试驱动程序,然后在测试驱动程序
根据我目前阅读的教程,使用“”将从图像启动一个容器,容器将在后台运行。这就是它的样子,我们可以看到我们已经有了容器id。 但如果我运行“”,则不会返回任何内容。 所以我尝试了“”,我可以看到容器已经退出: 我做错了什么吗?如何解决此问题?