965

有一个列出图像的命令docker images,但似乎没有对应的docker containers.

除了成为根并调查/var/lib/docker那里似乎没有办法做到这一点。我错过了什么吗?这是不应该做的事吗?

4

14 回答 14

1779

要仅显示正在运行的容器,请使用给定的命令:

docker ps

要显示所有容器,请使用给定的命令:

docker ps -a

要显示最新创建的容器(包括所有状态),请使用给定命令:

docker ps -l

要显示最后创建的 n 个容器(包括所有状态),请使用给定的命令:

docker ps -n=-1

要显示总文件大小,请使用给定的命令:

docker ps -s

上面呈现的内容来自docker.com

在新版本的Docker中,更新了命令,增加了一些管理命令:

docker container ls

它用于列出所有正在运行的容器。

docker container ls -a

然后,如果你想把它们全部清理干净,

docker rm $(docker ps -aq)

它用于列出所有创建的容器,无论其状态如何。

并停止所有 Docker 容器(强制)

docker rm -f $(docker ps -a -q)  

这里的容器是管理命令。

于 2013-05-30T17:15:11.927 回答
150

列出所有正在运行和停止的容器

docker ps -a

列出所有正在运行的容器(仅说明 -f 过滤选项的明显用法和示例)

docker ps -a -f status=running

列出所有正在运行和停止的容器,仅显示它们的容器 id

docker ps -aq

删除所有未运行的容器

docker rm `docker ps -aq -f status=exited`
于 2016-04-12T06:37:32.683 回答
33

请注意,前段时间对此命令进行了更新。默认情况下它不会显示容器大小(因为这对于许多正在运行的容器来说相当昂贵)。也用于docker ps -s显示容器大小。

于 2013-07-30T11:29:19.160 回答
22

docker ps -s 将仅显示正在运行的容器的大小。

要检查所有容器的大小,请使用docker ps -as

于 2014-12-13T13:01:50.443 回答
20

还有以下选项:

docker container ls
docker container ls -a
# --all, -a
# Show all containers (default shows just running)

自:1.13.0(2017-01-18)

docker image通过添加和命令来重构 CLI 命令以docker container获得更高的一致性#26025

并如此处所述:介绍 Docker 1.13,鼓励用户采用新语法:

CLI 重组

在 Docker 1.13 中,我们将每个命令重新组合到与之交互的逻辑对象下。例如容器的和现在是的子命令list和是的子命令。startdocker containerhistorydocker image

这些更改让我们可以清理 Docker CLI 语法、改进帮助文本并使 Docker 更易于使用。旧的命令语法仍受支持,但我们鼓励大家采用新的语法

于 2017-06-24T21:22:57.627 回答
15

仅列出容器 SHA1:

docker ps -aq --no-trunc

这样,您可以将所有容器的列表用于其他命令(接受多个容器 ID 作为参数)。

例如,列出所有容器的名称(因为docker ps仅列出它们的名称和其他信息):

docker inspect --format='{{.Name}}' $(sudo docker ps -aq --no-trunc)
于 2015-05-06T07:50:32.717 回答
15

Docker 命令集很简单并且很好地结合在一起:

docker stack ls
docker service ls
docker image ls
docker container ls

首先教别名是令人困惑的。一旦你了解发生了什么,他们可以节省一些击键:

docker images -> docker image ls
docker ps -> docker container ls
docker rmi -> docker image rm
docker rm -> docker container rm

Docker 中有几个别名。例如:

docker rmi
docker image rm
docker image rmi
docker image remove

都是相同的命令(请参阅您自己的使用docker help image rm)。

于 2018-04-26T17:41:14.147 回答
6

列出所有容器的方法有很多种。

您可以ls, ps, list像这样使用 3 个别名。

sudo docker container ls 
sudo docker container ps
sudo docker container list
sudo docker ps
sudo docker ps -a

您也可以使用给选项[option]

选项 -:

  -a, --all             Show all containers (default shows just running)
  -f, --filter filter   Filter output based on conditions provided
      --format string   Pretty-print containers using a Go template
  -n, --last int        Show last created containers (includes all states) (default -1)
  -l, --latest          Show the latest created container (includes all states)
      --no-trunc        Don't truncate output
  -q, --quiet           Only display numeric IDs
  -s, --size            Display total file sizes

您可以使用这样的选项:

sudo docker ps //Showing only running containers
sudo docker ps -a //All container (running + stopped)
sudo docker pa -l // latest
sudo docker ps -n <int valuse 1,2,3 etc>// latest number of created containers
sudo docker ps -s // Display container with size
sudo docker ps -q // Only display numeric IDs for containers
docker docker ps -a | tail -n 1 //oldest container
于 2018-11-19T12:26:32.783 回答
5

仅显示正在运行的容器

docker ps

显示所有容器(包括所有状态)

docker ps -a

显示最新创建的容器(包括所有状态)

docker ps -l

显示最后创建的 n 个容器(包括所有状态)

docker ps -n=-1

显示总文件大小

docker ps -s

在新版本的Docker中,更新了命令,增加了一些管理命令:

docker container ls

列出所有正在运行的容器。

docker container ls -a

于 2019-10-04T07:08:46.473 回答
4

列出正在运行的容器:-

$ docker ps

列出所有容器:-

$ docker ps -a

仅列出已停止的容器:-

$ docker ps --filter "status=exited"

或者

$ docker ps -f "status=exited"

于 2019-10-07T13:19:07.017 回答
4

用于docker container ls列出所有正在运行的容器。

使用该标志-a显示所有容器(不仅仅是运行)。IEdocker container ls -a

使用该标志-q显示容器及其数字 ID。IEdocker container ls -q

访问文档以了解此命令的所有可用选项。

于 2019-02-14T12:52:36.503 回答
3

只是获取最后一个 n=5 容器的便捷方式(无论是否运行):

$ docker container ls -a -n5
于 2019-08-30T09:36:04.520 回答
2

我收到错误消息Cannot connect to the Docker daemon.,我忘记了我正在以 root 身份运行守护进程并且需要sudo

$ sudo docker ps
于 2016-01-22T19:52:17.483 回答
1
docker ps [OPTIONS]

默认情况下,以下命令将仅显示正在运行的容器。

docker ps

查看所有容器:

docker ps -a

显示最新创建的容器:

docker ps -l
于 2017-08-29T15:56:36.943 回答