Docker 自修笔记(三)

本博客为JDGan自修Docker的笔记,如有粗鄙之处,还请见谅~

阅读本博客前,请确定掌握了前一篇blog:docker 服务

Docker 集群

Docker 里,群是一组运行着 Docker 的计算机,再把这个运行着的群,加入到一个群组里,集中起来管理,就是Docker 的集群。这样一个一个的群,称为 nodes,而发起并集中管理的 node,称为 swarm manager,其他 node 称为 worker。worker 没有操作集群的权限。

配置集群

作为 swarm manager 启动集群

$ docker swarm init 

作为 swarm manager 指定 ip 启动集群

$ docker swarm init --advertise-addr <ip>:<port>

作为 worker 加入指定集群

$ docker swarm join --token <token> <ip>:<port>

在 swarm manager 中查看所有 nodes

$ docker node ls

发布 app 到集群

集群启动完成以后,可以直接使用例如上一章用到的docker-compose.yml,放到 swarm manager 的 home directory。

version: "3"
services:
  web:
    image: $username/$repository:$tag
    deploy:
      replicas: 5
      resources:
        limits:
          cpus: "0.1"
          memory: 50M
      restart_policy:
        condition: on-failure
    ports:
      - "80:80"
    networks:
      - webnet
networks:
  webnet:

类似的,用下面的命令部署 app

$ docker stack deploy -c docker-compose.yml getstartedlab

成功后即可查看

$ docker stack ps getstartedlab
ID            NAME        IMAGE              NODE   DESIRED STATE
muc0g4py7u6g  test_web.1  username/repo:tag  node1  Running
sil8jzmjqxpt  test_web.2  username/repo:tag  node2  Running
vryfp1iz6e5a  test_web.3  username/repo:tag  node2  Running
nb3bnumfosed  test_web.4  username/repo:tag  node1  Running
khoxuflpcqgb  test_web.5  username/repo:tag  node2  Running

退出 app

$ docker stack rm getstartedlab

退出集群,集群控制器最好使用--force

$ docker swarm leave --force

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值