如何使用docker-compose + docker-swarm + overlay联网发现缩放的容器主机?
撰写/搬运工-compose.yml
version: '2' services: worker: image: some-image manager: image: some-image environment: # number of workers - INSTANCES=5 networks: default: driver: overlay
工人们被缩小了
docker-compose scale worker=5
pipe理器容器负责将工作负载分配给工作容器。
为了达到这个目的,pipe理者容器需要知道有多less工人以及主机名是什么。
我知道我可以通过使用主机“worker”或“compose_worker_1”访问第一个工作容器,使用“compose_worker_2”访问第二个容器。
但是经理应该怎么知道有多less工人呢?
我目前的解决方法是将工作人员的数量指定为环境variables,但已经运行docker-compose scale
似乎很乏味。
有什么其他轻量级的方法可以用来发现工人的数量吗?
我想让worker
manager
在启动后与manager
worker
build立联系,并准备好处理工作,作为“注册”。 这样pipe理员不需要知道什么,只是等待工人登记。