在Centos8中安装NEI系统
NEI产品介绍:
NEI 接口管理平台是一套集规范、工具、平台于一体的工程化解决方案,主要目标在于帮助产品在已有的项目基础上以最小的成本实现规范化、工程化的高效开发协作体系,通过项目各个环节的密切配合实现一个闭环可验证的体系,以保证各个环节使用的规范的一致性
NEI产品特性
- 低侵入性,对老项目可无侵入式引入并优化项目协作过程
- 高效率性,通过接口管理平台输出协作规范使得各端可以完全独立并行进行,提供丰富的效率工具支持使得各端可以高效生产,随后可进行无缝联调衔接
- 高通用性,可适应到各种后端环境的新老项目、接口管理平台的规范可以通过效率工具自动生成各种语言代码
- 高扩展性,模拟容器支持的模板可扩展、利用接口管理平台的数据可扩展出更多面向各端开发者的效率工具
- 可验证性,闭环可验证的一致性保证,通过测试环节对接接口管理平台自动化测试保证平台上数据的一致性
- 可操作性,具有从交互到上线完整的生产线支持,具有可具体实施的流程规范及操作步骤
NEI是由网易云音乐提供研发及维护服务的一款接口管理平台,NEI 虽然叫接口管理平台,但其实不只是管理接口,它可以管理整个产品,也具备项目脚手架的功能。详细功能介绍可参见NEI 基本概念介绍
NEI于2020年04月1日在GitHub开源,提供大家本地化搭建使用,在此特此感谢开源。
本教程为了让更多的人使用到该平台而进行编写,如有任何问题欢迎在下方留言。也可加入官方提供的NEI 用户交流 QQ 群(453281988)
在此特别鸣谢NEI huntbao对于本教程安装过程中遇到的一系列问题的协助指导。
NEI目前有在线版本大家可以使用,本次教程是安装本地离线版本。
本教程安装环境为
1、Centos8 x86 最小化安装系统-虚拟机,8核16G内存500G存储
2、NEI master版本 GitHub地址:https://github.com/x-orpheus/nei
下面我们开始进行正式安装:
根据下述要求进行安装相关软件
安装服务器软件
- Node.js
>=6.9.2
。 - Redis
>=2.8
。 - MySQL
>=5.7.12
,初始化脚本为 install.sql。 - MongoDB
>=3.4
。
1、安装node.js与npm环境
curl -sL https://rpm.nodesource.com/setup_12.x | bash -
#curl -sL https://rpm.nodesource.com/setup_6.x | bash -
yum install nodejs -y
这里,我们需要确认好版本,在NEI中要求是>=6.9.2,这里我们符合,直接-y,截图是没有执行curl时的,如果执行了第一行命令,这里版本应该是12.N版本,可以使用。
备注:若使用nodejs其他版本我们可安装n工具进行版本化管理。
npm install -g n
更新当前版本为最新稳定版本,并安装v6.9.x系列,输入n选择6.9系列版本
n stable
n v6.9
n
source /etc/profile
node -v
npm -v
安装完成后确认一下版本
node -v
npm -v
2、安装redis库
编译安装redis与编辑器 这里默认安装的redis版本是5.0,高于要求的版本号,因此可以直接安装
yum install vim redis -y
vim /etc/redis.conf
修改 daemonize yes
修改 requirepass 设置的密码
该配置是使其作为守护进程后台运行
重启redis服务
systemctl restart redis.service
备注:这里使用redis密码时需要在NEI的配置文件中进行修改auth_pass配置参数进行设置使用过程中的密码,下面在修改配置时会讲到。
3、安装mysql
yum install mysql-server
systemctl start mysqld
systemctl enable mysqld
依旧是确认一下匹配版本,这里默认安装版本是8.0,符合,直接安装
修改默认密码
mysql -uroot
alter user 'root'@'localhost' identified by '123456';
flush privileges;
exit;
重新登录测试
mysql -uroot -p
4、初始化数据库
下载NEI初始脚本SQL文件,并在数据库中执行
https://github.com/x-orpheus/nei/blob/master/docs/install.sql
安装git工具,并拉取最新master版本NEI包
yum install -y git
cd /opt/
git clone https://github.com/x-orpheus/nei.git
向数据库中导入初始化脚本。
mysql -uroot -p < nei/docs/install.sql
5、安装mongodb
先设置源
vim /etc/yum.repos.d/mongodb-org-4.repo
在其中填入如下内容
[mongodb-org-4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
开始执行安装,这里安装的是4.2.5版本
yum install mongodb-org
6、开始进行安装NEI
安装全局nej构建工具
cd /opt/nei/
npm install nej -g
进行安装其他需要的组件,并开始bulid
npm install
npm run build
7、修改NEI配置文件。
这里我们会涉及到三个配置文件,分别为develop.js、test.js和online.js (本地环境、测试环境、线上环境)的配置文件,我们这里主要使用的是online.js配置文件。
配置使用如下:
vim server/config/online.js
module.exports = {
salt: '0sY7fh6;wMt',
sendNotification: true,
logger: {
level: 'info',
root: './logs/'
},
testDomain: 'https://neitestfake.netease.com',
onlineDomain: 'https://nei.netease.com',
mysql: {
host: '127.0.0.1',
port: 3306,
user: 'root',
password: '123456',
database: 'nei-test',
connectionLimit: 100,
dateStrings: true,
charset: 'UTF8MB4_GENERAL_CI'
},
mongodb: {
url: 'mongodb://127.0.0.1:27017',
options: {
useNewUrlParser: true
},
name: 'nei_local',
key: 'test_'
},
redis: {
key: 'test_',
host: '127.0.0.1',
port: '6379',
auth_pass:'123456',
expire: 2678400
},
ip: {
disabled: true
},
mail: {
disabled: true
},
nos: {},
static: {
defer: false,
maxage: 2.592e9
},
mysqlLog: false
};
上述配置文件修改完成后,我们就可以启动使用了。如果我们在使用过程中出现一些服务器内部错误,很有可能是配置文件这里存在配置错误问题,建议和其他两个配置文件进行对比确认,如三种配置文件均无法启动,则可能是build没有成功,这时我们需要进行查看日志进行确认问题原因。
启动NEI
npm start
npm stop
在日常使用过程中我们通过NEI项目根目录的logs目录查看系统运行期间的日志和pm2命令查看运行状态与后端日志,命令如下:
pm2 list
pm2 logs
在进行开发调试时,可使用如下node原生命令进行相关操作,在此不做详细讲解。
npm run dev
测试访问:
出现以下页面,说明搭建完成,登录账号采用的是mysql中的user表,至此可以开始使用了。