docker ps hours
时间: 2024-02-11 11:27:04 浏览: 89
`docker ps` 命令用于列出正在运行的 Docker 容器。如果您想要获取容器的运行时间(以小时为单位),可以使用 `--format` 参数和 Go 模板,将 `docker ps` 命令的输出格式化。以下是一个示例命令:
```
docker ps --format "{{.Names}}: {{.RunningFor}}"
```
上述命令将列出所有容器的名称和运行时间。其中 `{{.Names}}` 表示容器名称,`{{.RunningFor}}` 表示容器的运行时间。
请注意,如果容器在分钟级别内运行,输出可能会显示为分钟,而不是小时。如果您需要获取更精确的时间单位,可以编写脚本进行计算和格式化输出。
相关问题
docker ps -s
`docker ps -s`命令用于列出所有正在运行的容器,并显示它们的文件大小。下面是一个示例:
```shell
$ docker ps -s
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
e7a5d3e8a6f1 nginx:latest "nginx -g 'daemon of…" 2 hours ago Up 2 hours 80/tcp webserver 2.5MB (virtual 2.5MB)
```
上面的输出中,`SIZE`列显示了容器的文件大小。在这个例子中,容器的文件大小为2.5MB。
docker ps -a存在但docker ps不存在
### Docker PS 命令解析
`docker ps` 和 `docker ps -a` 都是有效的命令,区别在于它们展示的内容不同。
#### 默认行为差异
默认情况下执行 `docker ps` 只会显示当前处于 **运行中** 的容器列表[^2]。这意味着如果没有任何容器正在运行,则此命令可能不会返回任何结果,这可能会让人误以为命令不可用。
```bash
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
```
当加上 `-a` 参数后 (`docker ps -a`) ,则不仅限于查看正在运行中的实例,还会罗列所有曾经启动过的容器记录——无论这些容器现在是否还在活动状态,包括那些已经被停止下来的实例也一并呈现出来[^3]:
```bash
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ff36e59b68e9 nginx "/docker-entrypoint.…" 2 days ago Exited (0) 21 hours ago wu-nginx-1
3a3527f8b61f scnginx:1.0 "nginx -g 'daemon of…" About a day ago Up About an hour 0.0.0.0:7755-nginx-2
```
因此,并不是说 `docker ps` 不存在或无法工作;而是因为它的作用范围更窄一些,默认只关注活跃的进程而已。要全面掌握系统内的所有容器情况(不论其当前的状态),应当使用带有 `-a` 选项的形式来调用该指令。
阅读全文