• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >虚拟化 > docker swarm如何在指定的node上运行指定的容器

docker swarm如何在指定的node上运行指定的容器

作者:leon_wzm 字体:[增加 减小] 来源:互联网

本文主要包含docker,node运行指定容器,docker,swarm在node运行等服务器相关知识,leon_wzm 希望可以进行参考

描述问题

比如我们有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还是很智能的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

您可能感兴趣的文章:

  • 详解Docker Swarm服务发现和负载均衡原理
  • docker swarm 集群故障与异常详解
  • Docker使用Swarm组建集群的方法
  • Docker Swarm入门实例详解
  • 详解使用docker 1.12 搭建多主机docker swarm集群
  • 在Ubuntu 16.04上用Docker Swarm和DigitalOcean创建一个Docker容器集群的方法
  • 轻松安装docker并运行docker swarm模式
  • Docker的安装方法及运行Docker Swarm模式的使用
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Docker实践8:Compose,docker实践compose
  • Docker buildx构建多平台镜像并推送到私有仓库的方法
  • Docker三个基本概念镜像(Image)容器(Container)仓库(Repository)
  • 什么是Docker?为什么要使用Docker
  • docker 开源的应用容器引擎
  • 如何给docker设置http代理
  • docker官方mysql镜像自定义配置详解
  • 详解Docker数据管理(数据卷&数据卷容器)
  • 如何利用Docker容器实现代理转发与数据备份详解
  • 详解Docker Swarm 在持续集成测试中的应用

相关文章

  • Vrtualbox虚拟机中共享文件夹配置教程
  • Centos7环境准备openstack pike的安装
  • Dockerfile中CMD和ENTRYPOINT命令详解
  • docker-compose 详解及示例代码
  • KVM与OpenStack的前世今生(1)
  • VMware安装Centos7超详细过程(图文)
  • 详解使用Docker容器来源码编译etcd
  • docker容器启动后添加端口映射
  • ubuntu14.04+docker的安装及使用
  • VMware中CentOS设置静态IP的方法

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Docker基础命令详解
    • Docker 限制容器的 Block IO使用
    • Docker命令行与守护进程的交互方法
    • docker registry私服搭建的方法
    • Docker SSH连接docker容器的示例代码
    • 详解基于Harbor搭建Docker私有镜像仓库
    • docker swarm如何在指定的node上运行指定的容器
    • VMware下Ubuntu 14.04静态IP地址的设置方法
    • 手把手教你使用 virtualBox 让虚拟机连接网络的教程
    • Centos 7中Docker私有仓库的搭建方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有