撰写/搬运工-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
管理器容器负责将工作负载分配给工作容器。
为了实现这一目标, 经理容器需要知道有多少工人以及主机名是什么。
我知道我可以通过使用主机" worker"来到达第一个工人容器。或" compose_worker_1"和#34; compose_worker_2"。
但是,经理如何知道有多少工人呢?
我目前的解决方法是将工作人员数量指定为环境变量,但已经运行docker-compose scale
似乎很乏味。
我是否可以使用其他轻量级方法来发现工人数量?
答案 0 :(得分:0)
我会让worker
在manager
启动后与referenced_list
建立连接并准备好处理工作,作为“注册”。这样,管理者不需要知道任何事情,它只是等待工人自己注册。