安卓系统

如何在Docker中列出容器

01. Docker的介紹 - Docker到Kubernetes 淺入中出系列

01. Docker的介紹 - Docker到Kubernetes 淺入中出系列

目录:

Anonim

Docker是一个容器化平台,可让您快速构建,测试和部署应用程序,作为可在几乎任何地方运行的可移植的自给自足容器。 它是事实上的容器部署标准,对于DevOps工程师及其持续的集成和交付渠道而言,它是必不可少的工具。

,我们将说明如何列出Docker容器。

列出Docker容器

用于列出容器的Docker命令采用以下形式:

docker container ls

1.13之前的旧Docker版本使用不同的命令来列出容器:

docker ps

上面的命令在较新的Docker版本中仍受支持,其中 ps 命令是 container ls 的别名。

要列出正在运行的容器,请运行不带任何选项的 docker container ls 命令:

docker container ls

输出将如下所示:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c8bded53da86 postgres "docker-entrypoint.s…" 2 hours ago Up 2 hours 5432/tcp pg 571c3a115fcf redis "docker-entrypoint.s…" 4 hours ago Up 4 hours 6379/tcp cache 05ef6d8680ba nginx "nginx -g 'daemon of…" 2 hours ago Up 2 hours 80/tcp web

输出的每一行包括以下几列:

  • Container ID –标识每个容器的唯一字母数字字符串。 Image –用于创建容器的Docker映像。 Command –启动容器时执行的命令。 Created -容器的创建时间。 Status –容器的状态。 Ports –容器的已发布端口。 Name –容器的名称。

如果没有正在运行的容器,则仅显示标题行。

-a ,-- --all 选项告诉 docker container ls 打印所有容器的列表:

docker container ls -a

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b28cbaa91f15 couchbase "/entrypoint.sh couc…" 5 hours ago Exited (0) 3 hours ago db c8bded53da86 postgres "docker-entrypoint.s…" 2 hours ago Up 2 hours 5432/tcp pg 571c3a115fcf redis "docker-entrypoint.s…" 4 hours ago Up 4 hours 6379/tcp cache 05ef6d8680ba nginx "nginx -g 'daemon of…" 2 hours ago Up 2 hours 80/tcp web

默认情况下,长度超过指定限制的列将被截断。 使用 --no-trunc 选项禁用截断:

docker container ls --no-trunc

要仅显示容器的ID,请传递 -q ,-- --quiet 选项:

docker container ls -q

c8bded53da86 571c3a115fcf 05ef6d8680ba

--format 允许您使用Go模板格式化输出。 例如,仅打印容器的名称和状态,包括要运行的标题:

docker container ls --format 'table {{.Names}}\t{{.Status}}'

NAMES STATUS pg Up 2 hours cache Up 4 hours web Up 2 hours

使用 -s ,-- --size 选项查看容器的大小:

docker container ls -s

每行将包含一个名为 SIZE 的列,该列显示容器的大小:

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE c8bded53da86 postgres "docker-entrypoint.s…" 2 hours ago Up 2 hours 5432/tcp pg 63B (virtual 394MB) 571c3a115fcf redis "docker-entrypoint.s…" 4 hours ago Up 4 hours 6379/tcp cache 0B (virtual 98.2MB) 05ef6d8680ba nginx "nginx -g 'daemon of…" 2 hours ago Up 2 hours 80/tcp web 2B (virtual 126MB)

--last -n 选项告诉命令显示最后创建的 n 个容器,包括所有状态。 例如,要查看最近创建的两个容器,可以运行:

docker container ls -n 2

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b28cbaa91f15 couchbase "/entrypoint.sh couc…" 5 hours ago Exited (0) 3 hours ago db c8bded53da86 postgres "docker-entrypoint.s…" 2 hours ago Up 2 hours 5432/tcp pg

还有一个选项仅列出最新创建的容器 --latest -l -n 1 相同:

docker container ls -l

--filter -f 选项可让您根据某些条件过滤输出。 例如,要仅查看状态为 exited 的容器,可以运行:

docker container ls -f "status=exited"

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b28cbaa91f15 couchbase "/entrypoint.sh couc…" 5 hours ago Exited (0) 3 hours ago db

有关所有支持的过滤器的列表,请查阅Docker文档。

结论

Docker容器是映像的独立运行时实例。

要列出Docker容器,请使用 docker container ls 命令或其别名 docker ps

码头工人