假设我们正在群集模式下工作,有三个节点:
- manager1
- worker1
- worker2
是否可以创建一个服务并指定任务仅在工作节点(worker1和worker2)而非管理节点(manager1)中运行?
我正在运行以下命令创建服务:
docker-machine ssh manager1 "docker service create --network dognet --name dog-db redis"
当我测试该服务时:
docker-machine ssh manager1 "docker service ps dog-db"
我理解为:
ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR
3kvfpbhl6fj0qwtglc5k7sbkw dog-db.1 redis manager1 Running Preparing 4 seconds ago
--constraint
,请注意它应该是node.role==worker
而不仅仅是node.role=worker
。 - TJ Biddle