Docker环境下的前后端分离项目部署与运维项目简介及环境要求

Posted wyt007

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker环境下的前后端分离项目部署与运维项目简介及环境要求相关的知识,希望对你有一定的参考价值。

项目简介

本教程将从零开始部署一个前后端分离的开源项目,利用docker虚拟机的容器技术,采用分布式集群部署,将项目转换成为高性能、高负载、高可用的部署方案。包括了mysql集群、Redis集群、负载均衡、双机热备等等。

技术图片

部署图

技术图片

所用到的主流技术

Docker容器、前后端集群、MySQL集群、Redis集群、Haproxy负载均衡、nginx负载均衡、Keepalived实现双机热备

技术图片

 

前后端分离项目部署图

技术图片

前后端分离项目开源框架介绍

本次教程所采用的前后端分离的项目开源框架是人人网的renren-fast,前台开发语言采用Vue,后台是java。

技术图片

总体部署方案概述

数据库我们采用的是集群,每一个MySQL节点都是要发布到一个Docker虚拟机实例中(实例就是一个虚拟的空间,或者叫容器),每一个MySQL都要部署到独立的容器里面,这些MySQL之间有一个集群环境。

然后我们不能把所有的数据库的请求都定向给一个MySQL去处理,因为这样负载会很高,所以我们应该分散MySQL的处理数据的请求,那么我们该怎么做呢?

答案就是做一个负载均衡,后台程序发给数据库所有的请求都由负载均衡分散给其余的MySQL,这些MySQL就能去处理对应的请求了,这样每一个MySQL节点的负载相应的会低一点。

而后台项目要体现的就是高可用,任何一个节点挂掉后不影响整体的运行,所以后台项目也要搞集群,这个集群用的技术就是Nginx了。

再往前就是前端项目了,前端节点如果宕机肯定也不能掉链子,也要搞集群,前端集群中间件也采用的是Nginx。

以上的这些节点都是要部署在独立的容器里面。

除了数据库之外还要使用高速缓存,高速缓存用的是redis,也要部署在容器当中组成一个集群。

利用VMware虚拟机安装Centos7

详细步骤:https://www.cnblogs.com/wyt007/p/10295834.html

以上是关于Docker环境下的前后端分离项目部署与运维项目简介及环境要求的主要内容,如果未能解决你的问题,请参考以下文章

基于Docker-Compose 部署前后端分离单体项目(一)

(Docker Nginx) Spring boot+Vue 前后端分离部署 详细完整版

Docker+nginx部署SpringBoot+vue前后端分离项目

Docker-compose+nginx部署SpringBoot+Vue前后端分离项目

docker-compose 部署 Vue+SpringBoot 前后端分离项目

在Docker运行的Nignx内部署前后端分离项目