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

    部署

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

  • 相关阅读:
    瑞芯微RK1126平台 通过http接口设置 ISP 饱和度 亮度 对比度
    面试突击74:properties和yml有什么区别?
    人大女王金融硕士项目——无论在任何时候,都不必怀疑努力的意义
    深度学习第一次作业 - 波士顿房价预测
    ZCMU--5230: 排练方阵(C语言)
    一文熟悉Latex论文排版
    gtest学习
    openssl 1.0.2k 升级到 openssl-3.0.3版本
    Python实现人脸识别
    MySQL 面试题——数据库理论基础
  • 原文地址:https://blog.csdn.net/weixin_43715214/article/details/126220112