是否可以分配一个特定的节点来创建带有 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
在创建新容器时,它遵循 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