定义好了 stack YAML 文件,就可以通过 docker stack deploy 命令部署应用,命令最后面的wpstack 是自动创建各项资源的前缀,方便区分不同的环境
 
root@host03:~# docker stack deploy -c wp.yaml wpstack    #    部署stack
Creating network wpstack_default
Creating secret wpstack_db_password
Creating secret wpstack_db_root_password
Creating service wpstack_db
Creating service wpstack_wordpress
root@host03:~# docker stack ls    #    查看stack list
NAME                SERVICES            ORCHESTRATOR
wpstack             2                   Swarm
root@host03:~# docker stack services wpstack    #    查看某stack包含的service list
ID                  NAME                MODE                REPLICAS            IMAGE               PORTS
60gocweop7sy        wpstack_wordpress   replicated          1/1                 wordpress:latest    *:80->80/tcp
wpi8ieo8k89z        wpstack_db          replicated          0/1                 mysql:5.7           
root@host03:~# docker service ps wpstack_db    #    查看 **_db service
ID                  NAME                IMAGE               NODE                DESIRED STATE       CURRENT STATE                    ERROR                       PORTS
lmpt206stwnl        wpstack_db.1        mysql:5.7           host02              Running             Running less than a second ago                               
root@host03:~# docker service ps wpstack_wordpress    #    查看 **_wordpress service
ID                  NAME                  IMAGE               NODE                DESIRED STATE       CURRENT STATE            ERROR               PORTS
q4zbhhs2nl7d        wpstack_wordpress.1   wordpress:latest    host02              Running             Running 33 seconds ago                       
 
访问 http://10.12.31.211    验证部署结果
 
root@host03:~# sed -i 's/80:80/81:80/' wp.yaml    #    修改wordpress对外端口号
root@host03:~# docker stack deploy -c wp.yaml wpstack    #    更新stack 配置
Updating service wpstack_db (id: wpi8ieo8k89z46ahxuwbnu357)
Updating service wpstack_wordpress (id: 60gocweop7sytwa5eab7zffkf)
root@host03:~# docker stack ls
NAME                SERVICES            ORCHESTRATOR
wpstack             2                   Swarm
root@host03:~# docker stack services wpstack
ID                  NAME                MODE                REPLICAS            IMAGE               PORTS
60gocweop7sy        wpstack_wordpress   replicated          1/1                 wordpress:latest    *:81->80/tcp
wpi8ieo8k89z        wpstack_db          replicated          1/1                 mysql:5.7           
root@host03:~# docker service ps wpstack_db
ID                  NAME                IMAGE               NODE                DESIRED STATE       CURRENT STATE           ERROR                       PORTS
lmpt206stwnl        wpstack_db.1        mysql:5.7           host02              Running             Running 3 minutes ago                               
root@host03:~# docker service ps wpstack_wordpress  #  可以看到新建并启动了一个副本
ID                  NAME                      IMAGE               NODE                DESIRED STATE       CURRENT STATE             ERROR               PORTS
nqpzyhi353qt        wpstack_wordpress.1       wordpress:latest    host01              Running             Running 45 seconds ago                        
q4zbhhs2nl7d         \_ wpstack_wordpress.1   wordpress:latest    host02              Shutdown            Shutdown 47 seconds ago                       
 
访问 http://10.12.31.211 验证部署结果
 
root@host03:~# docker stack rm wpstack    #    删除stack
Removing service wpstack_db
Removing service wpstack_wordpress
Removing secret wpstack_db_password
Removing secret wpstack_db_root_password
Removing network wpstack_default
 
 
如果想更新stack的某些属性,直接修改 YAML文件即可,然后再次执行上面的命令。
 
 

112、如何使用stack (Swarm19)的更多相关文章

  1. C/C++ 经典面试题汇总

    面试题1:变量的声明和定义有什么区别 ? 为变量分配地址和存储空间的称为定义,不分配地址的称为声明.一个变量可以在多个地方声明,但是只在一个地方定义.加入extern修饰的是变量的声明,说明此变量将在 ...

  2. 栈的图文解析 和 对应3种语言的实现(C/C++/Java)【转】

    概要 本章会先对栈的原理进行介绍,然后分别通过C/C++/Java三种语言来演示栈的实现示例.注意:本文所说的栈是数据结构中的栈,而不是内存模型中栈.内容包括:1. 栈的介绍2. 栈的C实现3. 栈的 ...

  3. 如何使用 stack?- 每天5分钟玩转 Docker 容器技术(112)

    定义好了 stack YAML 文件,就可以通过 docker stack deploy 命令部署应用. Docker 会按照 YAML 的内容来创建各种资源.为了不重名,所有资源都会加上 stack ...

  4. java.lang.StackOverflowError: stack size 8MB

    java.lang.StackOverflowError: stack size 8MB at android.text.TextUtils.getChars(TextUtils.java:86) a ...

  5. Native code - how to get function call stack (backtrace) programatically 附带源代码

    自己根据 https://github.com/zhuowei/libcorkscrew-ndk 上的库做了一个包装库并附带使用的例子(executable 分支),具体代码在自己的代码仓库里,名字叫 ...

  6. 聊一聊goroutine stack

    通过阅读这篇文章对内存的处理以及栈的扩容有了新的认识,我们在生产环境中也遇到了内存使用量超大的情况,现在怀疑也可能是由于栈扩容导致的 很好的一片文章: 推送在外卖订餐中扮演着重要的角色,为商家实时接单 ...

  7. [LeetCode] 112. Path Sum 二叉树的路径和

    Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all ...

  8. 栈(Stack) --- C# 自定义和微软官方的区别

    最近在学习算法基础,本篇文章作为一个记录,也算是一次实践和总结.(顺便也深入C#运行时学习一下) 目录 1. 栈是什么 2. Stack 自定义实现 3. Stack C#官方实现 4. 区别 5. ...

  9. 线性数据结构之栈——Stack

    Linear data structures linear structures can be thought of as having two ends, whose items are order ...

随机推荐

  1. Java - 自动装箱与拆箱详解

    1.装箱与拆箱 装箱,将基本数据类型转为包装类型.拆箱,将包装类型转为基本数据类型. // Byte, Short, Integer, Long, Double, Float, Boolean, Ch ...

  2. tp5 多条件查询

    $where['rc_category_id'] = array('eq',$cid); $where['rc_territory_ids'] = ['like', '%'.$tid.'%']; $l ...

  3. 如何实现一个串行promise

    异步执行任务A.B.C,...... 1.使用数组的reduce方法,reduce里有四个参数,pre,next,index,arr, 2.如果then方法里返回的是一个promise对象,那么执行下 ...

  4. jdbc元数据

    l  在jdbc中获取数据库的定义,例如:数据库.表.列的定义信息.就用到元数据. l  在jdbc中可以使用: 数据库元数据.参数元数据.结果集元数据 l  (元数据定义相关api,  ..Meta ...

  5. [log4j]SLF4J+log4j的使用

    使用log4j有两种方法,一种是直接使用log4j jar包,另一种是本文介绍的SLF4J+log4j的使用 概念     SLF4J:即简单日志门面(Simple Logging Facade fo ...

  6. [idea]创建一个控制台程序

    新建项目时,选择JBoss即可.

  7. MongoDB数据节点基础操作

    1.查看集群中各节点的状态: rs0:PRIMARY> rs.status() 2.查看集群中各节点配置情况: rs0:PRIMARY> rs.conf() 3.主节点降级为从节点: rs ...

  8. shell脚本安装python、pip--这种写法是错误的---每一个命令执行完都要判断是否执行成功,否则无法进行下一步

    shell脚本安装python.pip--不需要选择安装项目--不管用总报错,必须带上判断符号,while没有这种用法,写在这里为了以后少走弯路,所以不要用下面的执行了 首先把pip-.tgz 安装包 ...

  9. WinRar制作安装包

    这次研究了下WinRar制作程序安装包,我使用的是5.21版本. 选中要打包的文件,先压缩为RAR文件,然后双击打开文件 输入目录时可以选择前两项,输入绝对路径时,则为第三项. 配置解压前运行的解压后 ...

  10. <转>常规测试方法

    功能测试 1. 安装测试: 安装过程中对于缺省安装目录及任意指定的安装目录,是否都能正确安装: 若是选择安装,查看能否实现其相应的功能: 在所有能中途退出安装的位置退出安装程序后,验证此程序并未安装成 ...