使用Docker进行部署时,Container NAMES

我刚刚完成了我的第一个Docker部署,当我运行这个命令来查看最近进程的状态…

docker ps -a

我得到这个输出

码头输出

我的问题是 这些名字是指什么?

这些是为您正在运行的每个容器生成的随机名称。
你可以在pkg/namesgenerator/names-generator.go看到这些名字。

 // Docker, starting from 0.7.x, generates names from notable scientists and hackers. // Please, for any amazing man that you add to the list, consider adding an equally amazing woman to it, and vice versa. right = [...]string{ // Muhammad ibn Jābir al-Ḥarrānī al-Battānī was a founding father of astronomy. https://en.wikipedia.org/wiki/Mu%E1%B8%A5ammad_ibn_J%C4%81bir_al-%E1%B8%A4arr%C4%81n%C4%AB_al-Batt%C4%81n%C4%AB "albattani", // Frances E. Allen, became the first female IBM Fellow in 1989. In 2006, she became the first female recipient of the ACM's Turing Award. https://en.wikipedia.org/wiki/Frances_E._Allen "allen", ... 

您可以通过添加 – 名称到您的docker run命令的固定名称。

Michael Crosby( crosbymichael )在2013年10月为Docker 0.6.5在commit 0d29244中介绍了这种做法:

docker run添加名称

删除docker链接
不要将容器标识添加为默认名称
如果在运行时未指定,则创build自动生成的容器名称。

所罗门·海克斯( shykes )在docker 0.7中演变了这种做法, 承诺5d6ef317 :

随机名称的新集合为0.7:

心情+着名发明家。
例如。 “悲伤特斯拉”或“淘气”

正如VonC已经写道:“那些是你正在运行的每个容器生成的随机名称”。 那么为什么你应该使用自定义名称?

docker运行[image-name] – [container-name]

docker运行wildfly-8.1-mywildfly

以及如果你想停止/杀死/运行/检查或对你的容器做任何事情,你可以使用你的名字这样做:

docker工杀害mydocker

docker运行mydocker

否则,您必须始终执行docker ps并检查id(因为您不记得这些自定义名称)。

一个重要的注意事项是 ,如果将自定义名称分配给泊坞窗,它将永远分配给特定容器,这意味着即使杀死容器也不会再运行,不能再使用该名称。 如果你跑步

docker工人ps -a

你可以看到旧的仍在那里,但停下来。 在docker rm已经移除先前的容器之前,您不能重复使用容器名称。

要删除比某些自定义时间早的容器,请使用以下命令:

$ docker ps -a | grep'weeks ago'| awk'{print $ 1}'| xargs – 不运行,如果空的dockerrm

更多关于在这里去除容器。