Docker Swarm 常用命令
- # 管理配置文件
- docker config
- # 查看已创建配置文件
- - docker config ls
- # 将已有配置文件添加到docker配置文件中
- - docker config create docker 配置文件名 本地配置文件
- # 管理swarm节点
- docker node
- # 查看集群中的节点
- - docker node ls
- # 将manager角色降级为worker
- - docker node demote 主机名
- # 将worker角色升级为manager
- - docker node promote 主机名
- # 查看节点的详细信息,默认json格式
- - docker node inspect 主机名
- # 查看节点信息平铺格式
- - docker node inspect --pretty 主机名
- # 查看运行的一个或多个及节点任务数,默认当前节点
- - docker node ps
- # 从swarm中删除一个节点
- - docker node rm 主机名
- # 更新一个节点
- - docker node update
- # 对节点设置状态(“active”正常|“pause”暂停|“drain”排除自身work任务)
- - docker node update --availability
- # 管理敏感数据存储
- docker secret
- # 服务栈,栈的形式,一般作为编排使用,格式与docker compose相同。
- docker stack
- # 通过.yml文件指令部署
- - docker stack deploy -c 文件名.yml 编排服务名
- # 查看编排服务
- - docker stack ls

build
cgroup_parent
container_name
devices
dns
dns_search
tmpfs
external_links
links
network_mode
security_opt
stop_signal
sysctls
userns_mode
- # 作为集群的管理
- docker swarm
- # 初始化一个swarm
- - docker swarm init
- # 指定初始化ip地址节点
- - docker swarm init --advertise-addr 管理端IP地址
- # 去除本地之外的所有管理器身份
- - docker swarm init --force-new-cluster
- # 将节点加入swarm集群,两种加入模式manager与worker
- - docker swarm join
- # 工作节点加入管理节点需要通过join-token认证
- - docker swarm join-token
- # 重新获取docker获取初始化命令
- - docker swarm join-token worker
- # 离开swarm
- - docker swarm leave
- # 对swarm集群更新配置
- - docker swarm update
- # 服务管理
- docker service
- # 创建一个服务
- - docker service create
- # 创建的副本数
- - docker service create --replicas 副本数
- # 指定容器名称
- - docker service create --name 名字
- # 每次容器与容器之间的更新时间间隔。
- - docker service create --update-delay s秒
- # 更新时同时并行更新数量,默认1
- - docker service create --update-parallelism 个数
- # 任务容器更新失败时的模式,(“pause”停止|”continue“继续),默认pause。
- - docker service create --update-failure-action 类型
- # 每次容器与容器之间的回滚时间间隔。
- - docker service create --rollback-monitor 20s
- # 回滚故障率如果小于百分比允许运行
- - docker service create --rollback-max-failure-ratio .数值(列“.2”为%20)
- # 添加网络
- - docker service create --network 网络名
- # 创建volume类型数据卷
- - docker service create --mount type=volume,src=volume名称,dst=容器目录
- # 创建bind读写目录挂载
- - docker service create --mount type=bind,src=宿主目录,dst=容器目录
- # 创建bind只读目录挂载
- - docker service create --mount type=bind,src=宿主目录,dst=容器目录,readonly
- # 创建dnsrr负载均衡模式
- - docker service create --endpoint-mode dnsrr 服务名
- # 创建docker配置文件到容器本地目录
- - docker service create --config source=docker配置文件,target=配置文件路径
- # 创建添加端口
- - docker service create --publish 暴露端口:容器端口 服务名
- # 查看服务详细信息,默认json格式
- - docker service inspect
- # 查看服务信息平铺形式
- - docker service inspect --pretty 服务名
- # 查看服务内输出
- - docker service logs
- # 列出服务
- - docker service ls
- # 列出服务任务信息
- - docker service ps
- # 查看服务启动信息
- - docker service ps 服务名
- # 过滤只运行的任务信息
- - docker service ps -f "desired-state=running" 服务名
- # 删除服务
- - docker service rm
- # 缩容扩容服务
- - docker service scale
- # 扩展服务容器副本数量
- - docker service scale 服务名=副本数
- # 更新服务相关配置
- - docker service update
- # 容器加入指令
- - docker service update --args “指令” 服务名
- # 更新服务容器版本
- - docker service update --image 更新版本 服务名
- # 回滚服务容器版本
- - docker service update --rollback 回滚服务名
- # 添加容器网络
- - docker service update --network-add 网络名 服务名
- # 删除容器网络
- - docker service update --network-rm 网络名 服务名
- # 服务添加暴露端口
- - docker service update --publish-add 暴露端口:容器端口 服务名
- # 移除暴露端口
- - docker service update --publish-rm 暴露端口:容器端口 服务名
- # 修改负载均衡模式为dnsrr
- - docker service update --endpoint-mode dnsrr 服务名
- # 添加新的配置文件到容器内
- - docker service update --config-add 配置文件名称,target=/../容器内配置文件名 服务名
-
---更新配置文件---- # 1创建配置文件 docker config create nginx2_config nginx2.conf # 2删除旧配置文件 docker service update --config-rm ce_nginx_config 服务名 # 3添加新配置文件到服务 ocker service update --config-add src=nginx2_config,target=/etc/nginx/nginx.conf ce_nginx
- # 删除配置文件
- - docker service update --config-rm 配置文件名称 服务名
- # 强制重启服务
- - docker service update --force 服务名
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端