Docker Swarm是什么,如何使用它?

Docker Swarm是Docker自带的集群管理工具,可以将多个Docker主机集群为一个虚拟的Docker主机,在该主机上快速构建分布式应用。

使用Docker Swarm的步骤:

  1. 初始化Swarm集群:
    在创建集群的主节点上运行:
docker swarm init 

此命令将新主节点初始化为Swarm管理器(manager)节点。它还将特殊的机密令牌生成并打印。

  1. 添加工作节点:
    在要加入群集的其他机器上运行:
docker swarm join \
    --token SWMTKN-1-5e32hwdl22z9d60xslld4baxayyl2vgtkt52emco01zk8hw6tw-asvif2bgbbo5u6nbbvjfb7nsq \
    your_manager_ip:2377 

此命令将新节点添加为工作器(worker)节点。

  1. 部署服务:
    在管理器节点上运行:
yaml
version: "3.9"
services:
  web:
    image: "nginx:alpine"
    ports:
      - "80:80"

此Compose文件定义了一个web服务,使用nginx:alpine镜像,映射80端口。

然后运行:

docker stack deploy -c docker-compose.yml web 

此命令将在Swarm集群中部署web应用。

  1. 查看服务和任务:
# 查看web服务
docker service ls  
docker service inspect web

# 查看web任务 
docker service ps web

# 查看节点
docker node ls 
  1. 删除web服务:
docker stack rm web

此命令将从Swarm集群中删除web应用及其任务和服务。