Centos7.6 安装Docker、Docker Swarm集群

图1

多看官方文档.......

学习背景

简单了解一下 Docker Swarm ,为了后面学习K8S更轻松。。。

准备工作

系统:Centos7.6 / 64 位
Docker-ce:v20.10.8
Docker-compose:v1.24.1

Docker集群部署规划(三主一从)

实例 IP 角色
docker-node03 10.88.40.174
docker-node04 10.88.40.178
docker-node06 10.88.40.156
docker-node07 10.88.40.86

重点关注一下Raft一致性算法

至少3个节点,只有大多数( >1 )节点存活,集群才可以使用。

安装Docker-CE

1、若您安装过docker,需要先删掉,之后再安装依赖:
sudo yum remove docker docker-common docker-selinux docker-engine
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2、根据版本不同,下载repo文件。您使用的发行版:
wget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
软件仓库地址替换为:
sudo sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
3、更新索引文件并安装
sudo yum makecache fast
sudo yum install docker-ce

安装Docker-Compose

sudo curl -L "https://get.daocloud.io/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

下载完成后进入 `/usr/local/bin/`
chmod 777 docker-compose
图2

安装Docker Swarm

使用help 命令查看 docker swarm 有哪些命令
docker swarm --help
docker swarm init --help
初始化一个主节点,IP 是私网IP,初始化完成可以得到以下信息:
docker swarm init --advertise-addr 10.88.40.174
Swarm initialized: current node (qcf06webqdxzsll0ojrn28nxp) is now a manager.

To add a worker to this swarm, run the following command:

    docker swarm join --token SWMTKN-1-6czjulphzkrktyrl9jyzus477rza0d5bh9zhn5zwq8wt1qlbc2-7p0cf3yj5bnjs6wa2f5mqnobd 10.88.40.174:2377

To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions.

生成 加入 manager 信息 
docker swarm join-token manager
生成 加入 worker 信息
docker swarm join-token worker

图3

然后在其他节点执行 docker swarm jsoin ...

查看节点信息
docker node lsdocker node ls
图4

Docker Service

[root@node04 home]# docker service

Usage:  docker service COMMAND

Manage services

Commands:
  create      Create a new service
  inspect     Display detailed information on one or more services
  logs        Fetch the logs of a service or task
  ls          List services
  ps          List the tasks of one or more services
  rm          Remove one or more services
  rollback    Revert changes to a service's configuration
  scale       Scale one or multiple replicated services
  update      Update a service

Run 'docker service COMMAND --help' for more information on a command.

例子:创建一个nginx service

docker service create -p 8888:80 --name my-nginx nginx
图5

查看 service 常用命令

docker service ls
docker service ps my-nginx
docker service inspect my-nginx

动态扩缩容 my-nginx 副本数

docker service update --replicas 3 my-nginx

也可以使用

docker service scale my-nginx=3

核心:网络

yum install bridge-utils -y
iptables -nL -t nat
图6
docker service inspect my-nginx
"PublishMode": "ingress"
docker inspect ingress
图7

Docker Stack

图8

简单自学了解下 , https://www.cnblogs.com/secondtonone1/p/14101876.html

Docker Secret

图9

Docker Config

图10
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容