linux 我们可以将容器部署到Docker Swarm中的特定节点吗

pcww981p  于 2023-04-05  发布在  Linux
关注(0)|答案(2)|浏览(94)

我有一个docker swarm集群,它包含1个master 3个node。当我们通过swarm master部署容器时,例如使用以下命令

docker -H tcp://<master_ip>:5001 run -dt --name swarm-test busybox /bin/sh

Swarm将自动选择一个节点并部署我的容器。有没有办法手动选择一个节点?例如,我想在节点1中部署一个容器。

e5nqia27

e5nqia271#

看看Swarm过滤器文档。你可以设置各种约束,来限制Swarm应该为任何给定的容器选择什么节点。对于你的情况,尝试如下操作:

docker run ... -e constraint:node==node1 ...

这将在node1上启动容器。

nfzehxib

nfzehxib2#

简单的nginx示例(使用服务器的主机名)

docker service create --publish {serverPort}:80 --constraint "node.hostname == {hostName}" --name {serviceName} nginx:latest

相关问题