若依管理系统是基于SpringBoot的权限管理系统,可以用它作为基础构建自己的后台管理系统。这个项目在 Gitee 上有1.8 万个 star。

它有3 个版本,分别是单体版、前后端分离版、微服务版。这次是使用 docker部署他的微服务版本。

微服务版项目源代码包括 docker 部署的相关代码,但在实际部署过程中,并不能直接部署成功。

我将部署配置做了修改,代码放到了 gitcode 上,点这里查看代码改动部分。

image-20220505183351353

在安装好 docker 环境的主机上,复制并运行以下脚本可以实现一键部署若依系统。脚本执行时间大概 20 分钟左右。

git clone https://gitcode.net/hjue/ruoyi-cloud-docker.git
cd ruoyi-cloud-docker/docker/
sh copy.sh
sh deploy.sh base
sh deploy.sh modules

以下详细介绍安装过程

步骤一:准备构建环境

构建若依后端服务需要 Java和 Maven,安装过程参考文档【在CentOS7上安装和配置Java Web环境】

构建若依前端需要安装 Node.js,安装过程参考文档【在CentOS7上安装和配置Node.js】

Web 服务需要安装 Nginx,安装过程参考文档【手动部署LNMP环境】

整个安装过程比较耗时,可以购买 CSDN 云主机的 Springboot 镜像创建实例,一键准备好安装环境。Springboot 镜像已预装了如下软件:

  • Java 1.8

  • Maven

  • Node.js

  • Git

  • Docker

  • Nginx

  • MySQL

  • Redis

去 CSDN 开发云管理控制台,选择【springboot】镜像创建主机。

【springboot】镜像主机已经安装了 mysql、redis、nginx,这 3 个服务我们后面采用 docker 安装,这里停止这 3 个服务。

登录 Linux 主机,以 root 身份运行以下命令,停止 mysql 、redis、nginx 服务

systemctl stop mysql
systemctl disable mysql

systemctl disable redis
systemctl stop redis

systemctl disable nginx
systemctl stop nginx

步骤二:准备docker 环境

首先你需要安装好 docker 和 docker-compose。

安装 docker

yum install -y yum-utils
yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
 
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin

systemctl start docker

安装好的 docker 和 docker-compose的版本如下

# docker -v
Docker version 20.10.14, build a224086
# docker-compose -v
Docker Compose version v2.3.3

注意不能使用 compose v1版本,docker 尽量用新的版本

详细的安装过程参考文档CentOS 7 安装 Docker

步骤三:下载若依微服务版代码

git clone https://gitcode.net/hjue/ruoyi-cloud-docker.git

此版本 fork 自若依微服务版,修正了原版中 docker-compose 不能直接部署的问题

步骤四:构建前后端,复制发布文件到对应docker路径

cd ruoyi-cloud-docker/docker/
sh copy.sh

构建时间大概5-10 分钟,看到如下图示就说明构建成功了

image-20220505151356941

步骤五:启动若依系统基础环境

启动的服务包括 nacos-server、mysql、redis 服务

sh deploy.sh base

以上命令需要下载 3 个服务的镜像,大概需要运行 10-15 分钟。

运行完成后,使用 docker-compose ps 查看服务运行的状态,我们看到都是 running 状态表示服务正在正常运行

image-20220505151548898

打开浏览器,访问 http://<服务器ip 地址>:8848/nacos/,用你的服务器 ip 地址替代<服务器ip 地址>,如果能看到如下界面,表示nacos-server安装成功,可以接着进行下面安装。如果不能访问,可以通过查看nacos 日志文件nacos/logs/nacos.log寻找问题原因。

image-20220505164818393

步骤六:启动程序模块

sh deploy.sh modules

脚本大概运行 4 分钟左右,这个时间主要取决于下载镜像的速度。脚本运行结果如下,表示运行成功

image-20220505181443490

打开浏览器,访问你的主机 ip 地址,可以看到若依后台系统的登录界面,整个安装过程结束

image-20220505181222837

进阶

至此,我们完成了 用docker部署若依的微服务版。

不过这种部署方式还需要进行以下优化才能用在生产环境中:

  • 构建镜像一般使用CI工具进行,而不在生产环境中构建
  • 镜像存放在 docker 仓库中,生产环境只需拉取镜像
  • 镜像需要有版本管理,方便指定版本部署和回滚
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐