docker ps 和 container 命令有什么区别?

发布于 2022-09-11 16:28:39 字数 334 浏览 17 评论 0

我使用了docker-compose来启动容器, docker ps -al 列出了停止的容器,docker container ls 列出了正在运行的容器,但是直接run启动容器,“运行中”,“退出”状态的容器,使用docker ps -al都能看到,感觉对于这两个命令很混乱。

我看了文档,说docker ps -al用来列出容器列表,docker container用来管理容器,两个命令有区别吗?为什么单一一个命令无法把容器都列出来呢?

求路过的大佬讲解一下

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

脸赞 2022-09-18 16:28:39

docker ps与docker container ls之间的区别

Docker 1.13+引入了分组命令来帮助组织一堆Docker命令。两个命令都做同样的事情。
如果您运行docker help并使用Docker 1.13+(包括v17.03 +),您将在帮助文本中看到“管理命令”和“命令”。

Management Commands:
  ...
  container   Manage containers
  image       Manage images
  ...

Commands:
  ...
  ps          List containers
  run         Run a command in a new container
  ...

完整输出要长得多,如果查看整个命令列表,其中有大约40个。查看该列表很困难,因为这些命令与容器,图像,网络,卷等相关联。

Docker意识到从长远来看这是不可持续的,因此他们添加了“管理命令”,它有助于对所有命令进行分类,并使命令本身更加一致。

例如,docker container ls是新的方法docker ps。当然这需要打更多的字,但它的作用更清晰。同样,现在你可以运行docker image ls,docker network ls或docker volume ls。所有这些命令都具有一致性。

两个版本的命令都做同样的事情。我想,长期来看,非分组命令(例如docker run)将被弃用或不赞成使用, 取而代之的是 docker container run。没有迹象表明这种情况很快就会发生,但如果您使用Docker 1.13+,那么您应该尝试使用更新的语法。它更具描述性和一致性。

参考:
https://nickjanetakis.com/blo...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文