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
相关推荐
码视野38 分钟前
基于 Vue3 + Element Plus 的【智慧新能源汽车充电桩运维调度与分时共享租赁系统】设计与实现(附完整源码与PRD)
运维·人工智能·汽车·vue3
qq_426003961 小时前
【UI自动化测试】UI自动化报错解决方案
运维·ui·自动化
网安蟹佬霸1 小时前
WAF绕过技术实战:从规则检测到编码绕过全指南(2026最新版,附Payload集与自动化脚本)
运维·安全·网络安全·架构·自动化·网安
小杨不想秃头1 小时前
信息安全工程师教程第二章密码学
运维·服务器·密码学
I'mChloe1 小时前
WGCLOUD怎么监控多台服务器?从Server、Agent 部署到监控面板实战
运维·服务器
Android系统攻城狮2 小时前
Linux PipeWire深度解析之pw_init调用流程与实战(八十三)
linux·运维·服务器·音频进阶·pipewire音频进阶
国科安芯2 小时前
轨道供电韧性:ASP4644四通道降压架构在低轨卫星平台电源管理中的适用性分析
运维·网络·数据库·嵌入式硬件·架构·状态模式·低轨卫星星座
Python自动化直播3 小时前
周末测试直播自动化时,发现一个棘手的并发问题
运维·自动化
lxw20230271163 小时前
k8s的控制器
云原生·容器·kubernetes
zbyyd4 小时前
Linux 进程管理详解:从概念到实战
linux·运维·服务器