由于是集群系列,以下教程将同时在3台服务器上运行指令,分别是server01、server03、server04。
请各位仔细查看图片,配置文件中的不同,在图中将会用红色方框标识出来,对应配置也会在代码块上放3份,由于各配置可能只存在细微差别,请仔细阅读。因当中存在dns解析,因此host等配置将直接由域名代替,本文旨在帮助大家理解搭建集群时候各常用配置的作用,切勿直接复制粘贴。dns解析的搭建会另出一篇教程。
对于Mac和Windows安装好Docker以后,就已经有Docker Compose执行文件的了,但是Linux的是没有的。
对于Linux CentOS,需要手动去下载docker compose的执行文件。
docker的安装我们在这里就不做赘述了,直接开始我们docker-compose执行文件的下载思路。
在安装之前,我们先在服务器上跑一下docker-compose命令确认一下是否在系统指令/usr/local/bin文件夹下没有这个文件,如果已经有,执行指令会有对应输出
![](https://img-blog.csdnimg.cn/img_convert/e601ba8972aceb1f82d4cf80ca39337b.png)
如果没有,就提示没有这个指令。
![](https://img-blog.csdnimg.cn/img_convert/7c0ee5fa04bb98a75284b640d9be6bee.png)
接下来,我们去github看一下docker compose现在发行了什么版本,选一个合适的版本在服务器上安装即可。
![](https://img-blog.csdnimg.cn/img_convert/0397036fc7f8f1396acc4aa85e3662ec.png)
那我们选择最新的v2.17.0版本,这个时候,我们看见Assets列表下面,有很多不同的安装包,记得点开Show all 26 assets看一下全部安装包
![](https://img-blog.csdnimg.cn/img_convert/e116f9fb55c712a0266864c3b82f1d55.png)
有darwin-aarch64、darwin-x86_64、linux-aarch64、linux-armv6等,这些都是什么意思呢;这里就涉及到我们linux的系统的架构和uname指令了
我们在linux输入uname发现出来了一个Linux字样,那我们uname --help看看还有什么选项
![](https://img-blog.csdnimg.cn/img_convert/c1348f701d338fd495340a98d19342dc.png)
看见很多,有内核,硬件架构等信息,输入name -m会看见系统给出x86_64的字样,如果是在MacOs上输入uname会出Darwin字样。
![](https://img-blog.csdnimg.cn/img_convert/16c8fbdf1ae14a65ca4ded67f0bcb8dd.png)
那至此,我们知道了要根据系统架构选择不同的安装包,不能随便装。具体型号大家可以看自己服务器的情况自行选择。
那按照我们linux系统,我们是要找到linux-86_64那个安装包的,我们点开Show all 26 assets找到安装包,右键安装包的地址,选择复制链接地址。
![](https://img-blog.csdnimg.cn/img_convert/c298ad8e788ecefa10a09499bd077830.png)
得到地址 https://github.com/docker/compose/releases/download/v2.17.0/docker-compose-linux-x86_64
随后在服务器上输入 curl -L https://github.com/docker/compose/releases/download/v2.17.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose 将这个文件下载下来放到/usr/local/bin文件夹里。记得注意用户权限问题,root权限或者sudo执行下载以后使用会比较方便。
为什么特意说这个呢,因为网络上很多教程是直接给出一行指令,直接用是有可能不行的。
![](https://img-blog.csdnimg.cn/img_convert/1cc344c19a3c97f2c9145068ffbbe0d5.png)
docker-compose-${uname -s}-${uname -m}他其实就是获取系统架构的指令拼接成文件名然后去下载的,但是注意,我们系统的Linux是大写的L,但是github上面的文件名是小写的l,我们需要的是docker-compose-linux-x86_64,如果直接复制他的链接在我们的服务器上得到的是docker-compose-Linux-x86_64,是找不到对应文件的。所以盲目复制不可取,请勿直接复制,还是要搞清楚整个流程。
ok,文件下载下来之后,我们是放在了/usr/local/bin这个文件夹里面的, 这个时候我们看一下文件的权限。
![](https://img-blog.csdnimg.cn/img_convert/000b25d37160b5e14404ba4575612a1e.png)
发现是没有执行权限的(linux权限我们放在另一篇展开讲,这里不做过多赘述),我们运行chmod a+x /usr/local/bin/docker-compose 给文件执行权限。
![](https://img-blog.csdnimg.cn/img_convert/19c961d6a831e831bbd1c74db1ad88b4.png)
这个时候就有执行权限了。那至此,docker-compose执行文件就下载好了放在了我们的bin目录里面了。我们可以执行docker-compose version 看能不能顺利调用起来,如果能调用起来证明已经可以了。
![](https://img-blog.csdnimg.cn/img_convert/e556e828f71db7b8e3db31f61fa460e6.png)
下一篇我们将使用docker-compose开始安装中间件集群。