如何在Docker中列出容器

How to list containers in Docker

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

除了扎根并研究/var/lib/docker之外,似乎没有办法做到这一点。我错过什么了吗?这是不该做的事吗?


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

1
docker ps

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

1
docker ps -a

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

1
docker ps -l

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

1
docker ps -n=-1

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

1
docker ps -s

以上内容来自docker.com。

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

1
docker container ls

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

1
docker container ls -a

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

1
docker rm $(docker ps -aq)

用于列出创建的所有容器,而不考虑其状态。

这里的容器是管理命令。


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

1
docker ps -a

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

1
docker ps -a -f status=running

列出所有正在运行和已停止的容器,仅显示其容器ID

1
docker ps -aq

移除所有未运行的容器

1
docker rm `docker ps -aq -f status=exited`


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


Docker PS-S将只显示正在运行的容器的大小。

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


还有以下选项:

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

自:1.13.0(2017-01-18):

Restructure CLI commands by adding docker image and docker container commands for more consistency #26025

如前所述:引入docker 1.13,鼓励用户采用新的语法:

CLI restructured

In Docker 1.13, we regrouped every command to sit under the logical object it’s interacting with. For example list and start of containers are now subcommands of docker container and history is a subcommand of docker image.

These changes let us clean up the Docker CLI syntax, improve help text and make Docker simpler to use. The old command syntax is still supported, but we encourage everybody to adopt the new syntax.


要仅列出容器,请执行以下操作:

1
docker ps -aq --no-trunc

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

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

1
docker inspect --format='{{.Name}}' $(sudo docker ps -aq --no-trunc)


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

1
2
3
4
docker stack ls
docker service ls
docker image ls
docker container ls

首先教化名是令人困惑的。一旦你了解了正在发生的事情,他们就可以节省一些按键:

1
2
3
4
docker images -> docker image ls
docker ps -> docker container ls
docker rmi -> docker image rm
docker rm -> docker container rm

Docker中有几个别名。例如:

1
2
3
4
docker rmi
docker image rm
docker image rmi
docker image remove

都是相同的命令(有关您自己使用的docker help image rm)。


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

使用标志-a显示所有容器(不只是运行)。即docker container ls -a

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

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


获取所有容器的命令:

1
docker ps -a

获取运行容器的命令:

1
docker ps

要列出Docker中的所有容器,请发出以下命令。

1
docker container ls -a

列出容器:docker psdocker container ls

有关命令的更多详细信息:ps或container

谢谢。:)


有时,如果用户没有所需的权限,则系统不允许。因此在Ubuntu中使用"sudo"。

对于所有正在运行的进程:

1
sudo docker ps

对于所有进程,即使它们已停止:

1
sudo docker ps -a


有很多方法可以列出所有容器。

You can find using 3 Aliasesls, ps, list like this.

1
2
3
4
5
sudo docker container ls
sudo docker container ps
sudo docker container list
sudo docker ps
sudo docker ps -a

您还可以使用give option[option]

选项:

1
2
3
4
5
6
7
8
  -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

您可以使用这样的选项:

1
2
3
4
5
6
7
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

我收到错误消息Cannot connect to the Docker daemon.我忘记了我正在以根目录运行守护进程,需要sudo

1
$ sudo docker ps


1
docker ps [OPTIONS]

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

1
docker ps

要查看所有容器:

1
docker ps -a

显示最新创建的容器:

1
docker ps -l