官方文档

https://docs.docker.com/engine/swarm/

1.Docker环境安装

Linux要求内核3.0以上
cat /etc/os-release

1.卸载旧版本

yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine

2.需要的安装包

yum install -y yum-utils

3.设置镜像的仓库

yum-config-manager \ —add-repo \ https://download.docker.com/linux/centos/docker-ce.repo

默认是从国外的,不推荐 #推荐使用国内的

yum-config-manager \ —add-repo \ https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum软件包索引

yum makecache fast

4.安装docker相关的 docker-ce 社区版 而ee是企业版

yum install docker-ce docker-ce-cli containerd.io

6. 使用docker version查看是否按照成功

docker version

阿里云镜像加速配置-centos

sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-‘EOF’ { “registry-mirrors”: [“https://88gccuxe.mirror.aliyuncs.com“] } EOF sudo systemctl daemon-reload sudo systemctl restart docker

2.swarm集群搭建-两主两从

image.png

1.初始化节点

docker swarm init —advertise-addr 服务器ip地址 image.png
docker swarm join-token worker 生成添加worker节点的命令
docker swarm join-token manager 生成添加主节点的命令

2.docker service

docker service
image.png
灰度发布(金丝雀发布)

docker service create -p 8888:80 —name my-nginx nginx
启动一个服务
随机在集群的某台机器上启动容器
docker service ps my-nginx
docker service ls
image.png

扩缩容
docker service update —replicas 3 my-nginx
docker service scale my-nginx=10

测试
集群内的所有ip:8888访问nginx

docker service rm my-nginx

image.png

docker service create —mode