docker swarm常用命令

1、初始化Swarm集群

用于初始化一个Swarm集群,并将当前节点设置为Manager节点。

用法:docker swarm init --advertise-addr <Manager节点IP>

docker swarm init --advertise-addr 192.168.1.100

这会将当前节点初始化为Swarm集群的管理节点,并向其他节点广播IP 192.168.1.100。

2、将Worker节点加入Swarm集群

2.1 获取加入Swarm集群的工作节点令牌

docker swarm join-token worker

2.2获取加入Swarm集群的管理节点令牌

docker swarm join-token manager

2.3将一个Worker节点加入到Swarm集群

用法:docker swarm join --token <token> <Manager节点IP>:2377

docker swarm join --token SWMTKN-1-3t23f5f-vvjqz9sdgxlb12 192.168.1.100:2377

3、看节点状态

用法:docker node ls

docker node ls

更新节点的状态

用来更新Swarm集群中节点的可用性状态。

用法:docker node update --availability <availability> <node-name>

docker node update --availability drain worker-node-1

将worker-node-1节点设置为Drain状态,所有任务将被迁移到其他节点。

4、创建Swarm服务

用于创建一个新的Swarm服务。

用法:docker service create --name <service-name> --replicas <replicas> -p <port> <image>

docker service create --name web-service --replicas 3 -p 8080:80 nginx

使用nginx镜像创建一个名为web-service的服务,并将其副本数设置为3,映射容器的80端口到主机的8080端口。

5、查看服务

列出当前Swarm集群中所有的服务。

用法:docker service ls

docker service ls

6、查看服务的详细信息

用于查看特定服务的任务(容器)状态。

用法:docker service ps <service-name>

docker service ps web-service

7、更新服务

用于更新已有服务的配置,如镜像、端口、副本数等。

用法:docker service update --image <image> --replicas <replicas> <service-name>

docker service update --image nginx:latest --replicas 5 web-service

将web-service服务的镜像更新为nginx:latest,并将副本数扩展为5。

8、扩展或缩减服务副本数

用于动态调整服务的副本数。

用法:docker service scale <service-name>=<replicas>

docker service scale web-service=2 #web-service的副本数扩展到2

docker service ls

9、删除服务

用于删除Swarm中的服务。

用法:docker service rm <service-name>

docker service rm web-service #删除名为web-service的服务

10、查看Swarm集群的状态

docker info该命令提供有关Docker引擎的详细信息,包括Swarm集群的状态。

docker info

11、监控Swarm的日志

用于查看特定服务的日志。

用法:docker service logs <service-name>

docker service logs web-service显示web-service服务的容器日志

相关推荐
醉城夜风~1 小时前
Java详解经典算法题:接雨水(三种实现方案+原理剖析)
java·开发语言·算法
数智化转型推荐官2 小时前
2026统一身份管理系统五大发展趋势解读
java·运维·微服务
看菜鸡互2 小时前
探索用 SlideML 让大模型生成 PPT 的实验方法
java·运维
程序员张34 小时前
SpringBoot集成BCrypt密码加密库
java·spring boot·后端
闲猫4 小时前
Spring AI Agentic 模式(第1部分):Agent Skills——模块化、可复用的能力
java·人工智能·spring
源图客4 小时前
云途物流API开发-鉴权认证(Java)
java·网络·python
liguojun20254 小时前
篮球馆自动计时收费系统:从规则配置到自动结算的全流程拆解
java·大数据·运维·人工智能·物联网·1024程序员节
952365 小时前
RabbitMQ-基础操作
java·spring boot·分布式·后端·spring·rabbitmq
卓怡学长5 小时前
w266基于spring boot + vue 圣地延安美食乐享系统
java·数据库·vue.js·spring boot·spring·intellij-idea
donoot6 小时前
一次 Nginx 502 问题的深度排查:从 SELinux 到容器网络
nginx·docker·selinux·反向代理·502 bad gateway