docker容器主机名顺序号

凯特·卡森

在docker swarm中有副本/规模的情况下,是否可以选择让主机名/容器名具有一些seq号?

version: '3'

services:

  serA:
    image: someimage1
    hostname: serA
  serB:
    image: someimage2
    tty: true
    hostname: serB{{.Node.index}}
    deploy:
      replicas: 2

对于例如:我想有作为主机名serB1serB2

齐柏林飞艇

AFAIK不支持,也不支持,因为Docker团队认为这是个坏主意:

经过一番思考,我认为这不是一个好主意。

将来我们可能会摆脱规模数字。一旦我们使用Swarm迁移到多主机系统,跟踪整数的递增序列将变得(a)昂贵,并且(b)不可靠。

即使我们保留了比例数字,我也不认为依靠它们来划分容器之间的工作是个好主意。最好让容器生成自己的标识符并使​​用它,因此它不依赖于Compose正常工作。

...

回顾一些讨论:

  • $(hostname)或$(hostname -i)可用于获取唯一的ID或缩放容器的ip地址。使用此方法不会复制图像,而是在容器运行时对其进行评估。

  • 我们想删除顺序秤ID,而仅使用容器ID的唯一性。它们在分布式系统中不可靠

参见https://github.com/docker/compose/pull/1131https://github.com/docker/compose/pull/1371

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章