【问题标题】:docker container hostname sequential numberdocker 容器主机名序号
【发布时间】:2017-04-27 13:32:07
【问题描述】:

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

version: '3'

services:

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

例如:我想将主机名设为 serB1serB2

【问题讨论】:

    标签: docker docker-compose docker-swarm


    【解决方案1】:

    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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-08-26
      • 2022-06-15
      • 1970-01-01
      • 1970-01-01
      • 2023-04-07
      • 1970-01-01
      • 2016-09-11
      • 1970-01-01
      相关资源
      最近更新 更多