若依管理系统使用已有 Nacos 部署流程整理

背景

玩了一下开源项目 RuoYi 管理系统Cloud 版,卡住的地方是:它用到了 nacos 配置管理,如果用的 nacos 环境是单机且是内置数据库的话,该怎么配置呢?

本文整理本机启动 RuoYi Cloud 应用本地部署的过程,关键两个点:

  1. 使用已有的 Nacos 环境且无数据库的版本,需要手动创建需要的配置文件。
  2. nacos 配置有认证,需要在 bootstrap.yml 配置中添加 nacos 的账号和密码。
  3. 思考一个问题,Web 应用使用 https 部署的时候,前端敏感信息如 username、password 等信息,是否可以不加密提交呢?

准备工作

  1. 下载 若依管理系统源码 后,在本地解压。
  2. 使用 sql 文件夹的脚本创建数据库,它里面用到三个库, ry-cloud【管理系统库】, ry-config【nacos 配置管理库】,ry-seata【分布式事务管理】。quartz.sql 可以用 ry-cloud 库,编辑脚本,在行首加上 use ry-cloude; ,其他两个库,先创建,但是可以不用。

Nacos 配置创建

官方部署文档里面,部署 nacos 时使用 mysql 数据库版本,且数据库就用 sql 里面的 ry-config 数据库,这样的话,直接通过脚本初始化了全部配置。

但是,对于已经有的 nacos 环境,该怎么办呢?数据库版本的话,可以直接导入配置管理的数据。对于 nacos 非数据库部署方式来说,就需要手动创建配置了。

第一步,nacos 系统中为当前项目创建一个命名空间 ry

第二步,打开 ry-config 数据库中 config_info 表中的数据,确定 data_id 和内容:
在这里插入图片描述
第三步,在 ry 命名空间下,逐个以 data_id 为配置名称,content 为内容创建配置。
在这里插入图片描述
第四步,逐个点开配置进行修改,主要是 Redis 、datasource 配置,改为我们实际环境的信息。

优化建议 因为 application-dev.yml 配置是所有模块共享的,所以可以将 Redis 和 datasource 配置统一放到这个配置文件中:
在这里插入图片描述

后端服务启动

在 IDEA 中导入项目源码后,需要针对每个组件的 bootstrap.yml ,修改 nacos 配置中心和注册中心的地址、帐号和密码,默认项目中都没有帐号和密码的

根据需要启动组件进行修改,必须启动的组件有:

  1. ruoyi-gateway
  2. ruoyi-modules/ruoyi-system
  3. ruoyi-auth

针对这三个组件,逐个修改 bootstrap.yml 配置:

  cloud:nacos:discovery:# 服务注册地址server-addr: IP:portnamespace: ryusername: nacospassword: xxxconfig:# 配置中心地址server-addr: IP:portnamespace: ryusername: nacospassword: xxx# 配置文件格式file-extension: yml# 共享配置shared-configs:- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}

对nacos 注册中心和配置中心,分别添加 namespace、username、password 三项配置。

然后就可以逐个启动后台服务了,启动后在 nacos 注册中心查看服务列表:
在这里插入图片描述

前端安装及启动

首先,进入 ruoyi-ui 前端目录,在命令行执行安装命令:

npm install --registry=https://registry.npmmirror.com

再以开发模式启动:

npm run dev

最后访问系统首页:
在这里插入图片描述

系统服务监控

「系统监控-Admin控制台」它直接用的 SpringBoot Admin 功能,通过@EnableAdminServer 实现的。
在这里插入图片描述
访问的账号和密码是在 ruoyi-monitor-dev.yml 配置中,可以按需要修改。
在这里插入图片描述
进入服务监控页面:
在这里插入图片描述

启示录

想到公司一个流量采集产品,它能采集 http 流量,但是对 https 流量还是没有办法的。那么我们在 Web 应用中,如果直接部署为 https 协议,是不是不用对敏感表单加密了呢?

这么多年前端对敏感信息如username、password 等信息,都是在前端加密后再提交的。但是这个开源项目的登录,以及 SpringBoot Admin 的登录,都是直接提交明文信息的,为什么呢?
在这里插入图片描述
是加密传输复杂呢,还是明文传输没危险呢?以我这么多年的开发经验来说,前端明文传输敏感信息,终归是不妥的。

PS:今日立冬!人不能同时拥有青春和对青春的感受,何止是青春呐!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/58504.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字信号处理-FPGA插入不同误码率的模拟源

module data_error_injector (input clk, // 时钟信号,50MHzinput reset, // 复位信号,高有效input DIN_EN, // 数据输入使能,高有效input [7:0] ERROR_LEVEL, // 错误等级…

对称二叉树(力扣101)

题目如下: 思路 对于这道题, 我会采用递归的解法. 看着对称的二叉树, 写下判断对称的条件, 再进入递归即可. 值得注意的是, 代码中会有两个函数, 第一个是isSymmetric,第二个是judge. 因为这里会考虑到一种特殊情况, 那就是 二叉树的根结点(最上面的那个),它会单独用…

山东布谷科技:关于直播源码|语音源码|一对一直播源码提交App Store的流程及重构建议

自从YY、六间房开启国内聊天室和秀场等网红盛行的网络红利时代以来,紧随其后国内各大音视频平台相应出现,先有映客花椒等直播平台的风头正劲,后有功能板块更丰富的头条抖音Tiktok等,盈利功能点不仅仅有直播PK连麦等礼物打赏功能&a…

k8s图形化显示(KRM)

在master节点 kubectl get po -n kube-system 这个命令会列出 kube-system 命名空间中的所有 Pod 的状态和相关信息,比如名称、状态、重启次数等。 systemctl status kubelet #查看kubelet状态 yum install git #下载git命令 git clone https://gitee.com/duk…

ArcGIS地理空间平台 manager 任意文件读取漏洞复现

0x01 产品描述: ‌ ArcGIS‌是一个综合的地理空间平台,由Esri开发,旨在为专业人士和组织提供全面的地理信息系统(GIS)功能。ArcGIS通过集成和连接地理环境中的数据,支持创建、管理、分析、映射和共享…

【Rust实现命令模式】

Rust实现命令模式 什么是命令模式命令模式的应用场景命令模式的在Rust中的关系图Rust中的命令模式代码示例运行结果总结 什么是命令模式 命令模式,即通过统一接口,如C#interface,亦或C中的抽象类的0方法,通过定义统一的接口,在定义不同的对象,为之接口实现具体的方法逻辑,再通…

【学术论文投稿】React全攻略:构建高性能前端应用的黄金法则

第六届国际科技创新学术交流大会暨管理科学信息化与经济创新发展学术会议(MSIEID 2024)_艾思科蓝_学术一站式服务平台 更多学术会议论文投稿请看:https://ais.cn/u/nuyAF3 目录 引言 1. React简介 2. React的三大核心概念 2.1 JSX 2.2…

鸿蒙应用App测试-专项测试(DevEco Testing)

注意:大家记得先学通用测试在学专项测试 鸿蒙应用App测试-通用测试-CSDN博客 注意:博主有个鸿蒙专栏,里面从上到下有关于鸿蒙next的教学文档,大家感兴趣可以学习下 如果大家觉得博主文章写的好的话,可以点下关注&am…

AndroidLab:一个系统化的Android代理框架,包含操作环境和可复现的基准测试,支持大型语言模型和多模态模型。

2024-10-31,由清华大学和北京大学共同创建的AndroidLab数据集,为安卓自主代理的训练和评估提供了一个包含操作环境、行动空间和可复现基准的系统框架,这对于推动安卓代理技术的发展具有重要意义。 数据集地址:Android Instruct|A…

如何在算家云搭建Aatrox-Bert-VITS2(音频生成)

一、模型介绍 ‌ Aatrox - Bert -VITS2 模型是一种基于深度学习的语音合成系统,结合了 BERT 的预训练能力和 VITS2 的微调技术,旨在实现高质量的个性化语音合成。 二、模型搭建流程 1. 创建容器实例 进入算家云的“应用社区”,点击搜索找到…

OpenEuler 使用ffmpeg x11grab捕获屏幕流,rtsp推流,并用vlc播放

环境准备 安装x11grab(用于捕获屏幕流)和libx264(用于编码) # 基础开发环境&x11grab sudo dnf install -y \autoconf \automake \bzip2 \bzip2-devel \cmake \freetype-devel \gcc \gcc-c \git \libtool \make \mercurial \pkgconfig \zlib-devel \libX11-devel \libXext…

QCustomPlot添加自定义的图例,实现隐藏、删除功能(二)

文章目录 QCustomPlot初识和基本效果图实现步骤:详细代码示例:实现原理和解释:使用方法:其他参考要实现一个支持复选框来控制曲线显示和隐藏的自定义 QCPLegend 类,可以通过继承 QCPLegend 并重写绘制和事件处理方法来实现,同时发出信号通知曲线的状态变更。 QCustomPl…

聊一聊Elasticsearch的基本原理与形成机制

1、搜索引擎的基本原理 通常搜索引擎包括:数据采集、文本分析、索引存储、搜索等模块,它们之间的协作流程如下图: 数据采集模块负责采集需要搜索的数据源。 文本分析模块是将结构化数据中的长文本切分成有实际意义的词,这样用户…

PyCharm 导入本地包目录

PyCharm 是最新版 声明一下是野路子 现在我工程目录下有个 gen-py 文件夹,这是我 thrift 编译出来的 Python 依赖包 使用的话,我们可以在代码里加入系统路径 sys.path.append("./gen-py/") 但是这样写,PyCharm 没有提示&#…

80端口被进程 System PID=4 IIS导致的解决方法

是因为80端口被IIS占用。解决办法打开IIS管理器,然后停止:

异步4位计数器(Quartus与Modelsim联合仿真)

异步计数器(也称为ripple-through counter)的特点是每一位触发器的输出作为下一位触发器的时钟输入,因此计数速度会因为级联触发器的传播延迟而受到限制。这种计数器的最大工作频率通常低于同步计数器。 一、电路符号 输入信号:时…

若依cloud版集成微信扫码登录-绑定篇

前言 集成微信扫码登录的话,需要把项目的账号和微信账号进行绑定,然后才可以进行扫码登录 本篇内容是项目绑定微信 还需要申请一个微信开放平台账号 微信公众平台申请(测试平台)-CSDN博客 平台的项目回调接口可以先不写&…

鸿蒙应用App测试-通用测试

注意:大家记得学完通用测试记得再学鸿蒙专项测试 鸿蒙应用App测试-专项测试(DevEco Testing)-CSDN博客 注意:博主有个鸿蒙专栏,里面从上到下有关于鸿蒙next的教学文档,大家感兴趣可以学习下 如果大家觉得…

Linux 配置JDK

文章目录 一、下载Oracle-JDK1.1、如何正确的下载JDK二、配置JDK环境变量2.1 环境变量配置2.1.1、修改vim /etc/profile 添加jdk的路径一、下载Oracle-JDK 1.1、如何正确的下载JDK 首先我要安装的是oracle-jdk,这个时候什么地方都不要去,就去oracle的官网,然后找到,jdk的下…

springBoot 自动配置与starter

目录 一、自动配置 Springboot实现自动配置的核心机制 Conditional的作用是什么? 如何自定义自动配置? 步骤 例子分析 自动配置的优先级 如何禁用特定的自动配置? 二、starter 如何理解Spring Boot中的starter? 如何自…