RuoYi-Cloud-Plus
一、官网
dromara/RuoYi-Cloud-PlusRuoYi-Cloud-Plus
1.拉取代码 :
2.部署配置Mysql--导入sql 数据表
注意:数据库引擎使用InnoDB 表使用:utf8mb4 utf8mb4_general_ci
3.部署配置Redis
4.配置nacos数据库:
5.配置项目nacos地址:
6.配置启动ruoyi-system,ruoyi-gateway,ruoyi-auth
异常处理:
--数据库链接异常:
Failed to invoke the method queryList in the service org.dromara.system.api.RemoteTenantService. Tried 1 times of the providers [172.20.97.234:20880] (1/1) from the registry 127.0.0.1:8848 on the consumer 172.20.97.234 using the dubbo version 3.2.7. Last error is: Invoke remote method timeout. method: queryList, provider: DefaultServiceInstance{serviceName='ruoyi-system', host='172.20.97.234', port=20880, enabled=true, healthy=true, metadata={dubbo.endpoints=[{"port":20880,"protocol":"dubbo"}], dubbo.metadata.revision=f8137857f8320592cb62ce1195b68250, dubbo.metadata.storage-type=remote, timestamp=1715937990951}}, service{name='org.dromara.system.api.RemoteTenantService',group='null',version='null',protocol='dubbo',port='20880',params={side=provider, release=3.2.7, methods=queryByTenantId,queryList, logger=slf4j, deprecated=false, dubbo=2.0.2, interface=org.dromara.system.api.RemoteTenantService, service-name-mapping=true, generic=false, metadata-type=remote, application=ruoyi-system, prefer.serialization=fastjson2,hessian2, dynamic=true},}, cause: Timeout after 3000ms waiting for result.
以上问题为数据库链接异常,排查数据库。
二、Mac本地接入
1、创建网段
在Mac上:替换所有网络模式为自己定义的网段(或注释网断设置)
network_mode: "mynet"
:::info
网段设定可参考Docker网络模式--network_mode
:::
2、启动基础容器
修改minio
映射路径
-v /home/minio/data:/data改成-v /home/minio/data:/mnt/data
cd docker
docker-compose up -d mysql nginx-web redis minio
3、建表
分别建立数据库,运行以下SQL文件
DROP DATABASE IF EXISTS `ry-cloud`;
CREATE DATABASE `ry-cloud` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE `ry-cloud`;
:::warning
注:test.sql应在ry-cloud库内执行
:::
4、运行nacos
更改nacos的MySQL配置
# db.url.0=jdbc:mysql://127.0.0.1:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
# db.user.0=root
# db.password.0=root
db.url.0=jdbc:mysql://mysql:3306/ry-config?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
db.user.0=root
db.password.0=ruoyi123
对配置后的ruoyi-nacos
进行打包
docker build -t ruoyi/ruoyi-nacos:1.8.0 ruoyi-visual/ruoyi-nacos/.
cd docker
docker-compose up -d nacos
启动成功
进入后台页面
localhost:8848/nacos/index.html
更改跟pom.xml的nacos地址
<profile>
<id>dev</id>
<properties>
<!-- 环境标识,需要与配置文件的名称相对应 -->
<profiles.active>dev</profiles.active>
<nacos.server>nacos:8848</nacos.server>
<nacos.discovery.group>DEFAULT_GROUP</nacos.discovery.group>
<nacos.config.group>DEFAULT_GROUP</nacos.config.group>
<logstash.address>127.0.0.1:4560</logstash.address>
</properties>
<activation>
<!-- 默认环境 -->
<activeByDefault>true</activeByDefault>
</activation>
</profile>
5、更改nacos配置
将config/nacos目录下的文件依次拷贝到dev环境的nacos配置
更改数据源配置
datasource:
system-master:
# localhost --> mysql
url: jdbc:mysql://mysql:3306/ry-cloud?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&rewriteBatchedStatements=true
username: root
password: ruoyi123
gen:
url: jdbc:mysql://mysql:3306/ry-cloud?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&rewriteBatchedStatements=true
username: root
password: ruoyi123
job:
url: jdbc:mysql://mysql:3306/ry-job?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&rewriteBatchedStatements=true
username: root
password: ruoyi123
更改redis配置
6、构建核心项目镜像
项目打包
mvn clean install -U -D maven.test.skip=true -P dev
构建镜像
docker build -t ruoyi/ruoyi-monitor:1.8.0 ruoyi-visual/ruoyi-monitor/.
# docker build -t ruoyi/ruoyi-nacos:1.8.0 ruoyi-visual/ruoyi-nacos/.
docker build -t ruoyi/ruoyi-seata-server:1.8.0 ruoyi-visual/ruoyi-seata-server/.
docker build -t ruoyi/ruoyi-sentinel-dashboard:1.8.0 ruoyi-visual/ruoyi-sentinel-dashboard/.
docker build -t ruoyi/ruoyi-xxl-job-admin:1.8.0 ruoyi-visual/ruoyi-xxl-job-admin/.
docker build -t ruoyi/ruoyi-gateway:1.8.0 ruoyi-gateway/.
docker build -t ruoyi/ruoyi-auth:1.8.0 ruoyi-auth/.
docker build -t ruoyi/ruoyi-system:1.8.0 ruoyi-modules/ruoyi-system/.
docker build -t ruoyi/ruoyi-gen:1.8.0 ruoyi-modules/ruoyi-gen/.
docker build -t ruoyi/ruoyi-job:1.8.0 ruoyi-modules/ruoyi-job/.
docker build -t ruoyi/ruoyi-resource:1.8.0 ruoyi-modules/ruoyi-resource/.
运行容器
cd docker
docker-compose up -d seata-server sentinel ruoyi-monitor ruoyi-xxl-job-admin
7、业务服务
cd docker
docker-compose up -d ruoyi-gateway ruoyi-auth ruoyi-system ruoyi-resource
网关测试成功(说明mysql/redis配置成功)
全部业务服务启动成功
8、启动前端项目
# 进入项目目录
cd ruoyi-ui-vue3
# 安装依赖
npm install --registry=https://registry.npmmirror.com
# 启动服务
npm run dev
# 构建生产环境 yarn build:prod
# 前端访问地址 http://localhost:80