将唯一的ID传递给Docker Compose服务实例

时间:2019-02-19 11:10:43

标签: docker docker-compose

我必须部署第三方Web应用程序,其前端服务器的作用类似于负载均衡器,并在其后面部署实际应用程序服务器的多个实例。出于与我无关的原因,我必须将唯一ID作为环境变量传递给每个应用服务器实例。我的docker-compose.yml简化如下:

version: '3'
services:
  lb:
    image: lb_image
  app:
    image: app_image
    depends_on:
      - lb
    links:
      - "server:lb"
    environment:
      - LB_HOST=server

现在,我想运行:

docker-compose up -d --scale app=3

,但向每个实例传递不同的env变量值。我听说过模板,最好有这样的东西:

environment:
  - CONTAINER_ID={{.Node.Id}}

在我的docker-compose.yml中是否有可能(到目前为止,我所听说的每个解决方案都涉及编写外部脚本,我认为这完全放弃了使用Compose的好处)?

0 个答案:

没有答案