初始化swarm manager并制定网卡地址

docker swarm init --advertise-addr 192.168.10.117

强制删除集群,如果是manager,需要加–force

docker swarm leave --force
docker node rm docker-

查看swarm worker的连接令牌

docker swarm join-token worker

查看swarm manager的连接令牌

docker swarm join-token manager

使旧令牌无效并生成新令牌

docker swarm join-token --rotate

加入docker swarm集群

docker swarm join --token SWMTKN--5d2ipwo8jqdsiesv6ixze20w2toclys76gyu4zdoiaf038voxj-8sbxe79rx5qt14ol14gxxa3wf 192.168.10.117:

查看集群中的节点

docker node ls

查看集群中节点信息

docker node inspect docker- --pretty

调度程序可以将任务分配给节点

docker node update --availability active docker-

调度程序不向节点分配新任务,但是现有任务仍然保持运行

docker node update --availability pause docker-

调度程序不会将新任务分配给节点。调度程序关闭任何现有任务并在可用节点上安排它们

docker node update --availability drain docker-

添加节点标签

docker node update --label-add label1 --label-add bar=label2 docker-

删除节点标签

docker node update --label-rm label1 docker-

将节点升级为manager

docker node promote docker-

将节点降级为worker

docker node demote docker-

查看服务列表

docker service ls

查看服务的具体信息

docker service ps redis

创建一个不定义name,不定义replicas的服务

docker service create nginx

创建一个指定name的服务

docker service create --name my_web nginx

创建一个指定name、run cmd的服务

docker service create --name helloworld alping ping docker.com

创建一个指定name、version、run cmd的服务

docker service create --name helloworld alping:3.6 ping docker.com

创建一个指定name、port、replicas的服务

docker service create --name my_web --replicas  -p : nginx

为指定的服务更新一个端口

docker service update --publish-add : my_web

为指定的服务删除一个端口

docker service update --publish-rm : my_web

将redis:3.0.6更新至redis:3.0.7

docker service update --image redis:3.0. redis

配置运行环境,指定工作目录及环境变量

docker service create --name helloworld --env MYVAR=myvalue --workdir /tmp --user my_user alping ping docker.com

创建一个helloworld的服务

docker service create --name helloworld alpine ping docker.com

更新helloworld服务的运行命令

docker service update --args “ping www.baidu.com” helloworld

删除一个服务

docker service rm my_web

在每个群组节点上运行web服务

docker service create --name tomcat --mode global --publish mode=host,target=,published= tomcat:latest

创建一个overlay网络

docker network create --driver overlay my_network
docker network create --driver overlay --subnet 10.10.10.0/ --gateway 10.10.10.1 my-network

创建服务并将网络添加至该服务

docker service create --name test --replicas  --network my-network redis

删除群组网络

docker service update --network-rm my-network test
更新群组网络

docker service update --network-add my_network test

创建群组并配置cpu和内存

docker service create --name my_nginx --reserve-cpu  --reserve-memory 512m --replicas  nginx

更改所分配的cpu和内存

docker service update --reserve-cpu  --reserve-memory 256m my_nginx

指定每次更新的容器数量

--update-parallelism

指定容器更新的间隔

--update-delay

定义容器启动后监控失败的持续时间

--update-monitor 

定义容器失败的百分比

--update-max-failure-ratio

定义容器启动失败之后所执行的动作

--update-failure-action

创建一个服务并运行3个副本,同步延迟10秒,10%任务失败则暂停

docker service create --name mysql_5_6_36 --replicas  --update-delay 10s --update-parallelism  --update-monitor 30s --update-failure-action pause --update-max-failure-ratio 0.1 -e MYSQL_ROOT_PASSWORD= mysql:5.6.

回滚至之前版本

docker service update --rollback mysql

自动回滚

如果服务部署失败,则每次回滚2个任务,监控20秒,回滚可接受失败率20%

docker service create --name redis --replicas  --rollback-parallelism  --rollback-monitor 20s --rollback-max-failure-ratio . redis:latest

创建服务并将目录挂在至container中

docker service create --name mysql --publish : --mount type=bind,src=/data/mysql,dst=/var/lib/mysql --replicas  -e MYSQL_ROOT_PASSWORD= mysql:5.6.

Bind带来的风险

1、绑定的主机路径必须存在于每个集群节点上,否则会有问题
2、调度程序可能会在任何时候重新安排运行服务容器,如果目标节点主机变得不健康或无法访问
3、主机绑定数据不可移植,当你绑定安装时,不能保证你的应用程序开发方式与生产中的运行方式相同

添加swarm配置

echo "this is a mysql config" | docker config create mysql -

查看配置

docker config ls

查看配置详细信息

docker config inspect mysql

删除配置

docker config rm mysql

添加配置

docker service update --config-add mysql mysql

删除配置

docker service update --config-rm mysql mysql

添加配置

docker config create homepage index.html

启动容器的同时添加配置

docker service create --name nginx --publish : --replicas  --config src=homepage,target=/usr/share/nginx/html/index.html nginx 

---------------------
作者:亦非我所愿丶
来源:CSDN
原文:https://blog.csdn.net/wanglei_storage/article/details/77508620
版权声明:本文为博主原创文章,转载请附上博文链接!

docker swarm 命令的更多相关文章

  1. Docker(六):Docker 三剑客之 Docker Swarm

    实践中会发现,生产环境中使用单个 Docker 节点是远远不够的,搭建 Docker 集群势在必行.然而,面对 Kubernetes, Mesos 以及 Swarm 等众多容器集群系统,我们该如何选择 ...

  2. docker~swarm搭建docker高可用集群

    回到目录 Swarm概念 Swarm是Docker公司推出的用来管理docker集群,它将一群Docker宿主机变成一个单一的,虚拟的主机.Swarm使用标准的Docker API接口作为其前端访问入 ...

  3. docker swarm 搭建与服务更新

    一,docker swarm 是什么 Docker Swarm.Docker Machine与Docker Compose号称Docker三剑客Docker Swarm 和 Docker Compos ...

  4. docker swarm(当前官网示例)

    介绍 Docker Swarm 是 Docker 公司推出的官方容器集群平台,基于 Go 语言实现 作为容器集群管理器,Swarm 最大的优势之一就是 100% 支持标准的 Docker API.各种 ...

  5. docker swarm 搭建及跨主机网络互连案例分析

    准备工作 安装docker,不建议直接使用Docker官方的yum install docker wget http://yum.dockerproject.org/repo/main/centos/ ...

  6. Docker Swarm 让你事半功倍

    2016 年 DockerCon (天啊……我多么希望我当时在场)上展示的最重大的变革之一就是 1.12 版本引擎的 Swarm 模式.它意味着什么呢?它意味着:如果你在运行 Docker 1.12时 ...

  7. docker Swarm mode集群

    基本概念 Swarm 是使用 SwarmKit 构建的 Docker 引擎内置(原生)的集群管理和编排工具. 使用 Swarm 集群之前需要了解以下几个概念. 节点 运行 Docker 的主机可以主动 ...

  8. Docker Swarm 资源管理

    Docker Swarm Docker Swarm是Docker官方项目之一,是使用SwarmKit构建的Docker引擎内置的集群管理和编排工具,提供Docker容器集群服务,是Docker官方对容 ...

  9. Docker Swarm 常用命令

    # 管理配置文件 docker config     # 查看已创建配置文件     - docker config ls     # 将已有配置文件添加到docker配置文件中     - dock ...

随机推荐

  1. C++Primer笔记-----day04

    1.函数指针.函数指针指向某种特定类型,函数的类型由它的返回类型和形参类型决定,与函数名无关.比如:bool lengthCompare(const string &,const string ...

  2. Javascript中prototype属性详解 (存)

    Javascript中prototype属性详解   在典型的面向对象的语言中,如java,都存在类(class)的概念,类就是对象的模板,对象就是类的实例.但是在Javascript语言体系中,是不 ...

  3. 使用JavaScript调用aspx后台代码

    方法1:js同步调用 触发: onclick="javascript:share('<%# Eval("id_File") %>')" 页面函数: ...

  4. Spring DI的配置使用

    1.1.1 依赖和依赖注入Spring IOC容器的依赖有两层含义:Bean依赖容器和容器注入Bean的依赖资源:a.Bean依赖容器:也就是说Bean要依赖于容器,这里的依赖是指容器负责创建Bean ...

  5. spring与IOC,ioc与di的关系

  6. mysql默认字符编码设置教程:my.ini设置字符编码

    在mysql的安装目录下找到my.ini,如果没有就把my-medium.ini复制为一个my.ini即可. 打开my.ini以后, [client] default-character-set=ut ...

  7. [hdu4347]The Closest M Points(平衡树式kdtree)

    解题关键:模板题(结合起来了) #include<iostream> #include<cstdio> #include<cstring> #include< ...

  8. th:onclik()传参问题(前端使用了bootstrap)

    网上大多帖子是这么写的 onclick调javascript函数时,不能直接使用onclick=“editUser(${prod.id})”,这样会报错,需要修改成如下的格式. <a href= ...

  9. faster-rcnn目录介绍

    data 用来存放pretrained模型,比如imagenet上的,以及读取文件的cache缓存 experiments 存放配置文件以及运行的log文件,另外这个目录下有scripts可以用end ...

  10. Opencv读取图片像素值

    #include <iostream>#include <opencv2/opencv.hpp> using namespace std;using namespace cv; ...