Docker 1.13 最实用命令行:终于能够愉快地打扫房间了

Docker 1.13 出来已经有一段时间了,新版本添加了许多有用的命令,本文做者从处女座的洁癖(此处有雾)出发,告诉你们一些整理环境的小技巧。打扫房间不再需费时又费力了,简单的命令,就能够轻松地把物品分门别类(容器、镜像、网络、存储卷……)地整理好node

在 1.13 版本中, Docker 向 CLI 添加了一些有用的命令,让环境更加整洁。你可能已经体验了很长时间乱糟糟的开发环境——无用的容器,挂起的 Docker 镜像,弃置的 volume ,被遗忘的网络……全部这些过期的事物占据了宝贵的资源,最终致使环境没法使用。在以前的文章中曾经提到用各类各样的命令保持环境的整洁,例如:nginx

docker rm -f $(docker ps -aq) 

强制地删除全部正在运行的、暂停的以及终止的容器。一样地,也有命令能够删除挂起的镜像、网络和 volume 。docker

尽管上述命令解决了问题,可是它们要么专有,要么冗长或者难用。而新加入的命令直截了当又简单好用,如今就开始一一介绍吧。bash

管理命令

为了整理 CLI , Docker 1.13 引进了新的管理命令,以下:markdown

  • system
  • container
  • image
  • plugin
  • secret

Docker 的老版本中已经有了 network, node, service, swarm 和 volume 。这些新命令组子命令过去做为 root 命令直接实现。举个例子:网络

docker exec -it [container-name] [some-command] 

exec 命令如今是 container 下面的一个子命令,这个命令至关于:app

docker container exec -it [container-name] [some-command] 

我的猜想为了兼容性的考虑,旧语句眼下还会使用一段时间。ui

Docker 系统

如今有一个新管理命令 system 。它有 4 个子命令分别是 df, events, info 和 prune 。命令 docker system df 提供 Docker 总体磁盘使用率的概况,包括镜像、容器和(本地) volume 。因此咱们如今随时均可以查看 Docker 使用了多少资源。spa

若是以前的命令展现出 docker 已经占用了太多空间,咱们会开始清理。有一个包办一切的命令:code

docker system prune 

这个命令会删除当前没有被使用的一切项目,它按照一种正确的序列进行清理,因此会达到最大化的输出结果。首先删除没有被使用的容器,而后是 volume 和网络,最后是挂起的镜像。经过使用 y 回复来确认操做。若是想在脚本中使用这个命令,可使用参数 --force 或者 -f 告诉 Docker 不要发来确认请求。

Docker 容器

咱们已经知道许多 docker container 的子命令。它们过去(如今也是)是 docker 的直接子命令。能够经过下面的命令获得完整的子命令列表:

docker container --help 

在列表中会看到一个 prune 命令。若是使用它,那么只会删除无用的容器。所以这条命令比 docker system prune 命令更局限。使用 --force 或者 -f 赞成可让 CLI 再也不进行确认请求。

Docker 网络

这里也有一个 prune 命令:

docker network prune 

删除全部孤立的网络。

Docker Volume

volume 也有新的 prune 命令了:

docker volume prune 

删除全部(本地)没有被容器使用的 volume 。

Docker 镜像

新的镜像命令也是 prune 子命令。--force 用法如上面同样, --all 能够删除全部不用的镜像,不仅挂起的镜像。

docker image prune --force --all 

这个命令能够删除全部不使用的镜像而且再也不请求确认。

总结

Docker 1.13 不只经过引入 admin command 添加了一些须要的命令,也让咱们找到了一些很是有用的清理环境的命令。笔者最爱的命令莫过于 docker system prune ,让环境一直保持干净整齐。

相关文章
相关标签/搜索