继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Docker Swarm 入门:Docker Stack

三国纷争
关注TA
已关注
手记 466
粉丝 51
获赞 178

webp

文/Anoyi

前言介绍

stack 是构成特定环境中的 service 集合, 它是自动部署多个相互关联的服务的简便方法,而无需单独定义每个服务。

stack file 是一种 yaml 格式的文件,类似于 docker-compose.yml 文件,它定义了一个或多个服务,并定义了服务的环境变量、部署标签、容器数量以及相关的环境特定配置等。

Stack File 的编写

服务的各种配置已在之前的文章中介绍,只是在书写格式上有所变化,可以对应官方文档列举的 Demo 做参考:

https://docs.docker.com/compose/compose-file/

示例:使用 Stack 部署 Docker Swarm 入门:Service Network 管理 的应用

version: '3.4'services:
  mongo:
    image: mongo
    restart: always
    networks: 
      - mongo_network
    deploy:
      restart_policy:
        condition: on-failure
      replicas: 2
  mongo-express: 
    image: mongo-express
    restart: always
    networks: 
      - mongo_network
    ports:
      - target: 8081
        published: 80
        protocol: tcp
        mode: ingress
    environment:
      ME_CONFIG_MONGODB_SERVER: mongo
      ME_CONFIG_MONGODB_PORT: 27017
    deploy:
      restart_policy:
        condition: on-failure
      replicas: 1
networks:
  mongo_network:
    external: true

部署 Stack

用法

docker stack deploy [OPTIONS] STACK

参数

简写参数默认值描述

--bundle-file
实验阶段】分布式应用程序包文件的路径
-c--compose-file
Stack File 路径

--prune
删除不再被引用的服务

--resolve-imagealways查询 Registry 以解决镜像摘要和支持的平台(“always”、”changed”、”never”)

--with-registry-auth
向 Swarm 代理发送 Registry 认证详细信息

示例:将上述内容写到文件 stack.yml 中,然后部署

docker stack deploy -c stack anoyi_mongo

Stack 列表

用法

docker stack ls

webp

Stack 服务列表

docker stack services [OPTIONS] STACK

webp

Stack 任务列表

用法

docker stack ps [OPTIONS] STACK

webp

Stack 删除

用法

docker stack rm STACK [STACK...]

示例:

docker stack rm anoyi_mongo



作者:Anoyi
链接:https://www.jianshu.com/p/25c529e3a3e6


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP