有了Docker,我们可以实现redis,mysql等中间件、容器的镜像部署。也可以实现自定义项目的的构建和部署。
但是这些操作(部署)都是我们手动一步一步来完成的,在生产环境中微服务的数量是非常多,少则数十,多则上千!难道需要我们一个一个手动部署吗?
所以我们一定要有一种集群的部署手段!
Docker Compose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器!
Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。(可以简单的想Compose文件类似于n个docker run的集合)
其语法如下所示:
我们将其与之前docker命令的对比:
具体的Compose的语法可以查看官网:Compose specification | Docker Documentation
Linux需要安装DockerCompose只要输入一下命令:
这里给出的是国内的镜像,使用github会出现一些问题(懒得解决了...)
curl -L https://get.daocloud.io/docker/compose/releases/download/1.29.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
然后再给一下权限
chmod +x /usr/local/bin/docker-compose
结果如下:
将之前的cloud-demo微服务集群利用DockerCompose部署
① 查看课前资料提供的cloud-demo文件夹,里面已经编写好了docker-compose文件
② 修改自己的cloud-demo项目,将数据库、nacos地址都命名为docker-compose中的服务名
③ 使用maven打包工具,将项目中的每个微服务都打包为app.jar
④ 将打包好的app.jar拷贝到cloud-demo中的每一个对应的子目录中
⑤ 将cloud-demo上传至虚拟机,利用 docker-compose up -d 来部署
更新中.........之前的代码还未完成.....待续......