• Docker集群部署DockerCompose


    为什么要有DockerCompose?

    有了Docker,我们可以实现redis,mysql等中间件、容器的镜像部署。也可以实现自定义项目的的构建和部署。

    但是这些操作(部署)都是我们手动一步一步来完成的,在生产环境中微服务的数量是非常多,少则数十,多则上千!难道需要我们一个一个手动部署吗?

    所以我们一定要有一种集群的部署手段

    什么是DockerCompose?

    Docker Compose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器!

    Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。(可以简单的想Compose文件类似于n个docker run的集合

    其语法如下所示:

    我们将其与之前docker命令的对比: 

    具体的Compose的语法可以查看官网:Compose specification | Docker Documentation 

    安装Compose

    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 来部署

    部署

    更新中.........之前的代码还未完成.....待续......

  • 相关阅读:
    硬核神作|万字带速通Nacos
    并发编程13-JUC之CountDownLatch
    理解Mysql索引原理及特性
    vue 城市选择器的使用 element-china-area-data
    项目管理的方法论 一
    ADC实验
    【精品】JavaScript中获取URL中参数值的方法汇总
    代码随想录算法训练营第三天|LeetCode 203.移除链表元素 、707.设计链表 、206.反转链表
    常见集群算法解析
    mongo加入systemctl进行管理服务
  • 原文地址:https://blog.csdn.net/weixin_43715214/article/details/126220112