使用swarm组织集群

swarm init 创建集群

然后会打印出 swarm join ,在另一台机器上输入

查看集群

bash 复制代码
docker node ls

解散集群 swarm node leave --forece

部署

bash 复制代码
# 创建网络
docker network create  --driver=overlay --subnet=10.110.1.0/24 blocknet
docker stack deploy -c docker-compose.yml mystack

docker-compose.yml 如下

yaml 复制代码
version: '3'
services:
  supervisor:
    image: emulator:latest
    cap_add:
      - NET_ADMIN
    deploy:
      placement:
        constraints:
          - node.id == ex1gf143dc9cvvd778fzca6os
    volumes: 
      - /home/rkzhang/image/emulator_mount:/root/emulator_mount
    ports:
      - "52100:22"
    networks:
      - blocknet 
  node0:
    image: emulator:latest
    cap_add:
      - NET_ADMIN
    deploy:
      placement:
        constraints:
          - node.id == 9yypexmyozsgaayzw38ntkahm
    volumes:
      - /home/dd/emulator_mount:/root/emulator_mount
    ports:
      - "50000:22"
    networks:
      - blocknet 

  node1:
    image: emulator:latest
    cap_add:
      - NET_ADMIN
    deploy:
      placement:
        constraints:
          - node.id == ex1gf143dc9cvvd778fzca6os
    volumes:
      - /home/rkzhang/image/emulator_mount:/root/emulator_mount
    ports:
      - "50001:22"
    networks:
      - blocknet 
  
networks:
  blocknet:
    external: true
    name: blocknet
bash 复制代码
docker service ls

hostname 和 servicename 不一致

在docker network inspect 命令中可以查看每个容器的ip(如果指定了ip网段)

但是使用 ip addr show 和 dig dns解析出来的ip 不一致,是因为使用了 vip 通信。

可以使用 tasks.<service-name> ,这样解析出来 service-name的ip就是容器的 ip addr show的ip 也和docker network inspect中的ip一致

相关推荐
李少兄4 分钟前
Kubernetes 日志管理
docker·容器·kubernetes
suamt17 分钟前
记录windows下如何运行docker程序
运维·docker·容器
虎冯河23 分钟前
阿里云 + 宝塔面板环境Python 项目从 0 到 1 部署全流
python·阿里云·云计算
特立独行的猫a27 分钟前
低成本搭建鸿蒙PC运行环境:基于 Docker 的 x86_64 服务器
docker·容器·harmonyos·鸿蒙pc
China_Yanhy1 小时前
后端开发者的 AWS 大数据指南:从 RDS 到 Data Lake
大数据·云计算·aws
鋆雨无欢丶1 小时前
docker证书认证问题
运维·docker·容器
阿杰 AJie1 小时前
Docker 容器启动的全方位方法汇总
运维·docker·容器
我的golang之路果然有问题1 小时前
Docker 之常用操作(实习中的)
java·运维·笔记·docker·容器·eureka
Stark-C1 小时前
密码管理器的尽头,是自托管!极空间私有化部署『password-XL』
docker
牛奔1 小时前
Docker 容器无法停止的排障与解决全过程
运维·docker·云原生·容器·eureka