Docker Stack简介及使用

Docker Stack简介及使用

1.简介

Docker Compose的缺点是不能在分布式多服务器上使用,Docker swarm的缺点是不能同时编排多个服务,所以才有了Docker Stack,可以在分布式多服务器上同时编排多个服务。

2.使用实例

1.准备docker-compose文件

本地准备两个镜像后,编写compose文件/root/docker-compose.yml:

python 复制代码
version: "3.9"
services:
  service1:
    image: "masonzhang/service1:V1"
    deploy:
        replicas: 2
    ports:
      - "8080:8080"

  service2:
    image: "masonzhang/service2:V1"
    deploy:
        replicas: 3
    ports:
      - "8081:8081"

2.swarm集群搭建

可参考:docker swarm安装使用

3.stack部署

python 复制代码
$ docker stack deploy myapps --compose-file=/root/docker-compose.yml

4.stack其他操作

查看所有stack的信息

python 复制代码
$ docker stack ls

NAME      SERVICES   ORCHESTRATOR
myapps    2          Swarm

查看某个stack中的所有任务信息

python 复制代码
$ docker stack ps myapps

ID             NAME                IMAGE                    NODE      DESIRED STATE   CURRENT STATE
tvvujrf3qcr1   myapps_service1.1   masonzhang/service1:V1   node1     Running         Running 46 seconds ago       
igjeydmmvzzm   myapps_service1.2   masonzhang/service1:V1   manager   Running         Running 46 seconds ago       
7p5c96eplwl3   myapps_service2.1   masonzhang/service2:V1   node1     Running         Running 34 seconds ago       
7shglsajip5d   myapps_service2.2   masonzhang/service2:V1   manager   Running         Running 39 seconds ago       
upo0mr7j9tn1   myapps_service2.3   masonzhang/service2:V1   node2     Running         Preparing 41 seconds ago  

查看某个stack中的所有服务信息

python 复制代码
$ docker stack services myapps

ID             NAME              MODE         REPLICAS   IMAGE                    PORTS
icz3kjn0skb3   myapps_service1   replicated   2/2        masonzhang/service1:V1   *:8080->8080/tcp
myuzlwnrxag4   myapps_service2   replicated   3/3        masonzhang/service2:V1   *:8081->8081/tcp

移除stack

python 复制代码
docker stack rm myapps
相关推荐
邪修king2 小时前
Re:Linux 系统篇(三十五):进程间通信Chapter2:从匿名管道到进程池:Linux 进程间通信实战(深度理解「先描述,再组织」)
java·linux·运维
运维行者_3 小时前
应用性能监控怎么选?从调用链到用户体验的五个能力维度
运维·服务器·数据库·人工智能·mysql·性能优化·应用性能监控
考虑考虑7 小时前
nginx路由重写
运维·后端·自动化运维
Zenova EdgeOS9 小时前
Linux 内核日志 dmesg 进阶实战:从现场过滤到持久化闭环
linux·运维·服务器
郝亚军10 小时前
ec_private.pem的生成方法
linux·运维·服务器
NendoZen10 小时前
Arch Linux解决Grub无法SAVEDEFAULT问题(uki启动问题)
linux·运维·服务器
Elastic 中国社区官方博客11 小时前
Elasticsearch:安装自行管理的 Elastic Stack 集群
大数据·运维·服务器·数据库·elasticsearch·搜索引擎·全文检索
忆挽篱笙歌11 小时前
进程控制管理
linux·运维·服务器
fengkai454513 小时前
3、Kubernetes的Namespace&Contexts&Pod&YAML格式
运维·容器·kubernetes·k8s·namespace·yaml·pod
戴西软件13 小时前
制造研发中的AI视觉与仿真:戴西工程图纸智能审图智能体、戴西3DViz_CAE AI集成与戴西3DViz_CAD AI集成
大数据·运维·人工智能·3d·自动化·制造·rpa