docker swarm如何在指定的node上运行指定的容器
发表于:2025-02-08 作者:千家信息网编辑
千家信息网最后更新 2025年02月08日,描述问题比如我们有worker1,worker2,worker3三个docker host另外加一个manager1(它是swarm的master)来管理它们。如果在manager1上直接docker
千家信息网最后更新 2025年02月08日docker swarm如何在指定的node上运行指定的容器
描述问题
比如我们有worker1,worker2,worker3三个docker host另外加一个manager1(它是swarm的master)来管理它们。
如果在manager1上直接docker service create某一个容器的话,比如nginx容器,那么master会来决定挑哪一个node作为nginx容器的运行的host。
如果我要nginx容器只跑在worker1上面的话,应该怎么办呢?
解决方案
简单来说就是给每一个node打标签。
docker node update --label-add func=nginx worker1
上面这句话的意思是master给worker1的docker打上了功能是nginx的标签。func和nginx是你可以自己定的键值对。
然后在运行docker service create 的时候,指定-constraint参数即可
docker service create --name my_nginx --constraint 'node.labels.func == nginx' nginx
这样nginx的容器就会在worker1上启动,而不会在其他node上启动了。
补充
我的好奇心让我使了一个坏。我把worker1打上func=nginx的标签后,在docker service create的constraint参数上故意写成node.labels.func == nginx111。
这个时候用docker service ls和docker service ps nginx都可以看到service已经注册了,但是它的CURRENT STATE显示Pending , 并且也没有任何分配到node。
我不停止这个service,然后直接把worker2的标签写为nginx111,奇迹般地,在worker2上就自己启动了nginx的容器。master还是很智能的。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
容器
标签
运行
参数
就是
时候
好奇
三个
内容
功能
奇迹
好奇心
怎么办
意思
我要
方案
智能
解决方案
还是
这句话
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
张店办公软件开发公司
软件开发企业适合哪种财务软件
数据库自己删除数据
湖北物联网时钟监控网关服务器
如何查看存储服务器磁盘型号
福州app小程序软件开发
软件开发团队必须要有ceo吗
数据库 并发 同一个表
亿安智能有招聘软件开发实习生
pcl2支持的服务器
Win10访问域服务器不通
奥特曼视频软件开发
创建sybase数据库
网络安全管理有哪些专业
代码数据库网络架构
asp 连接多个数据库
虚拟网络技术什么意思
cnki的数据库是
江西发展网络技术咨询
数据库自动编号怎么看
30岁学软件开发晚
公司网络安全知识学习
供电所网络安全管理材料
招聘网计算机网络安全专业
数据选择与数据库有关么
山东专业服务器虚拟主机
互联网科技需求的及时性
软件开发项目中的分工
云服务器如何用手机管理
邬贺铨工业互联网络技术