为了账号安全,请及时绑定邮箱和手机立即绑定

Docker Swarm 入门:Docker Stack

标签:
Docker

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


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消