是否可以分配一个特定的节点来创建带有 docker swarm 的容器?

Is it possible to assign a specific node to create container with docker swarm?

在创建新容器时,它遵循 swarm 的策略 select 一个节点

如果必须在特定节点上工作,我不想直接针对该节点发出命令。

有没有办法告诉 swarm 在特定节点上工作?


更新

根据@DAXaholic 的回复,默认守护进程选项 Lable 可以是可调用标签。

所以,我编辑 /etc/default/docker,将 --label 添加到 DOCKER_OPTS

重启服务后,节点可以通过特定的标签值调用。

是的,您可以使用 filters
所以这个想法本质上是你给你的节点标签来描述它们,比如 'node-with-gpu' 或类似的东西。
还有一个默认标签 'node',您可以使用它来过滤特定节点

因此 node1 上 运行 Redis 的示例可能如下所示

$ docker tcp://<manager_ip:manager_port> run -d --name redis1 -e
constraint:node==node1 redis