主页 >> 程序猿的东西 >> 无用冷知识之docker生成默认容器名方法

无用冷知识之docker生成默认容器名方法

在给docker启动容器的时候,如果你没有指定一个容器名给他,他会给你生成一个。开始觉得这大概跟ID一样也是一串乱码,但是看多了发现有玄机。上几个例子品一品,右边看起来比较凌乱,但是左边好像都是形容词。

CONTAINER ID            NAMES
33e225171381            kind_ardinghelli4
ba9cb7b53cfb            crazy_bell
c887f147d929            focused_bardeen
1552df7eab6d            dreamy_kowalevski
66384e4eff2b            awesome_herschel
bb3e8304454a            sad_hertz
89ded8258080            boring_chatterjee
8515eeebf6b3            cranky_dhawan

后来找到了他的源码,非常简单,就是用枚举的方法列出了一堆形容词和一堆人名。

https://github.com/moby/moby/blob/master/pkg/namesgenerator/names-generator.go

除此之外还有一些有趣的点:

每个人名都是著名的科学家和hacker,而且都附上了个人介绍的wiki。如果你想加一个男人的名字进去,必须同时加一个女人,反之亦然。

其中有两名中国女性科学家,屠呦呦和吴健雄。

最下面有一段代码

if name == "boring_wozniak" /* Steve Wozniak is not boring */ {
	goto begin
}

嗯,史蒂夫不会boring

发表评论