docker swarm常用命令及部署应用
一、docker swarm常用命令
#查看集群节点 docker node ls
#创建nginx服务 #docker pull nginx #下载私有仓库镜像 docker service create --name nginx --replicas 2 --publish 80:80 nginx
#查看swarm集群中的服务 docker service ls docker service ps nginx
#kill其中一个容器 docker kill 96e6bccc2209 #等会自动启动一个新的容器
#修改服务实例数量为3 docker service scale nginx=3
#删除nginx服务 docker service rm nginx
#删除swarm节点 docker swarm leave --force #node docker node rm -f #manager
#docker swarm 常用命令 docker swarm init #初始化集群 docker swarm join-token worker #查看工作节点的 token docker swarm join-token manager #查看管理节点的 token docker swarm join #加入集群中
#docker node 常用命令 docker node ls #查看所有集群节点 docker node rm #删除某个节点(-f强制删除) docker node inspect ##查看节点详情 docker node demote #节点降级,由管理节点降级为工作节点 docker node promote #节点升级,由工作节点升级为管理节点 docker node update #更新节点 docker node ps #查看节点中的 Task 任务
#docker service 常用命令 docker service create #部署服务 docker service inspect #查看服务详情 docker service logs #产看某个服务日志 docker service ls #查看所有服务详情 docker service rm #删除某个服务(-f强制删除) docker service scale #设置某个服务个数 docker service update #更新某个服务
#退出节点
管理节点:docker swarm leave --force 普通节点:docker swarm leave
二、部署应用
docker service create 常用参数
--constraint放置约束 --container-label容器标签 --dns设置自定义 DNS 服务器 --dns-option设置 DNS 选 --dns-search设置自定义 DNS 搜索域 --endpoint-mode端点模式(vip 或 dnsrr) --env,-e设置环境变量 --env-file读入环境变量文件 --group为容器设置一个或多个补充用户组 --health-cmd运行以检查运行状况的命令 --health-interval运行检查之间的时间 (ns/us/ms/s/m/h) --health-retries需要报告不健康的连续失败 --health-timeout允许运行一项检查的最长时间 (ns/us/ms/s/m/h) --host设置一个或多个自定义主机到 IP 映射 (host:ip) --hostname容器主机名 --label,-l服务标签 --limit-cpu限制 CPU --limit-memory限制内存 --log-driver服务的日志记录驱动程序 --log-opt记录驱动程序选项 --mode服务模式(复制或全局) --mount将文件系统挂载附加到服务 --name服务名称 --network网络组 --no-healthcheck禁用任何容器指定的 HEALTHCHECK --publish,-p将端口发布为节点端口 --replicas副本数 --reserve-cpu预留 CPU --reserve-memory预留内存 --restart-condition满足条件时重新启动(无、失败或任何) --restart-delay重新启动尝试之间的延迟 (ns/us/ms/s/m/h) --restart-max-attempts放弃前的最大重启次数 --restart-window用于评估重启策略的窗口 (ns/us/ms/s/m/h) --secret指定要公开给服务的秘密 --stop-grace-period强制杀死容器前的等待时间 (ns/us/ms/s/m/h) --tty,-t分配一个伪 TTY --update-delay更新之间的延迟(ns/us/ms/s/m/h)(默认 0s) --update-failure-action更新失败的操作(暂停/继续) --update-max-failure-ratio更新期间容忍的失败率 --update-monitor每次任务更新后监控失败的持续时间(ns/us/ms/s/m/h)(默认 0s) --update-parallelism同时更新的最大任务数(0 表示一次全部更新) --user,-u用户名或 UID(格式:[:]) --with-registry-authswarm 代理发送注册表身份验证详细信息 --workdir,-w容器内的工作目录
部署应用跟docker一样,可以把应用打包成镜像运行设定的副本个数即可
docker service create --replicas 3 --name tomcat tomcat
查看应用docker service ls
docker service ps tomcat查看名为tomcat部署详情