记一次 Centos7.x YApi 私有化部署

一、基本信息

官网:https://hellosean1025.github.io/yapi/
开源中国:https://www.oschina.net/p/yapi?hmsr=aladdin1e1
教程: https://hellosean1025.github.io/yapi/documents/index.html
内网部署:https://hellosean1025.github.io/yapi/devops/index.html
开发Api :https://hellosean1025.github.io/yapi/openapi.html

二、工具、环境

1、工具:xshell5
2、VMware 版本:VMware Workstation Pro15
3、虚拟机安装 Centos7.x
参考 https://blog.csdn.net/llwy1428/article/details/89328381
4、NodeJS v8.17
参考 https://blog.csdn.net/llwy1428/article/details/111880286
5、MongoDB v4.0.22
参考https://blog.csdn.net/llwy1428/article/details/93462075

三、系统配置

1、防火墙配置开启指定端口

[root@localhost ~]# firewall-cmd --list-all
[root@localhost ~]# firewall-cmd --permanent --add-port=9090/tcp
[root@localhost ~]# firewall-cmd --permanent --add-port=3000/tcp
[root@localhost ~]# service firewalld restart

关闭防火墙(不推荐)

关闭防火墙    :[root@localhost ~]# systemctl stop firewalld
查看状态      : [root@localhost ~]# systemctl status firewalld
开机禁用      : [root@localhost ~]# systemctl disable firewalld

2、禁用 SELinux
参考 https://blog.csdn.net/llwy1428/article/details/100938748

四、MongoDB v4.0.22 安装部署

1、MongoDB 官网下载页面
https://www.mongodb.com/try/download/community
说明:本文中 MongoDB 选择了 v4.0.22 版本,没有选择最新版本。
2、系统创建目录

[root@master ~]# mkdir -p /opt/mongodb 

3、下载安装文件

[root@master ~]# wget -P /opt/mongodb https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.22.tgz

在这里插入图片描述
4、进入安装包所在目录

[root@master ~]# cd /opt/mongodb/

5、解压缩安装文件、查看文件目录

# 解压缩文件
[root@master mongodb]# tar zxf mongodb-linux-x86_64-4.0.22.tgz

在这里插入图片描述
6、创建目录、赋权(用来存放数据、日志、配置文件)

[root@master ~]# mkdir /opt/mongodb/mongodb-linux-x86_64-4.0.22/data
[root@master ~]# mkdir /opt/mongodb/mongodb-linux-x86_64-4.0.22/log
[root@master ~]# mkdir /opt/mongodb/mongodb-linux-x86_64-4.0.22/conf

7、创建、编辑配置文件

[root@master ~]# vim /opt/mongodb/mongodb-linux-x86_64-4.0.22/conf/mongodb.conf

8、编辑、写入内容

# 端口
port=27017
# 数据库存文件存放目录  
dbpath= /opt/mongodb/mongodb-linux-x86_64-4.0.22/data
#日志文件存放路径
logpath= /opt/mongodb/mongodb-linux-x86_64-4.0.22/log/mongodb.log
#使用追加的方式写日志
logappend=true
#不以守护程序的方式启用,即不在后台运行
fork=true
#最大同时连接数
maxConns=100
#不启用验证
noauth=true
#每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)
journal=true
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
#storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
#这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
bind_ip = 0.0.0.0

9、给目录授权

[root@master ~]# chmod 755 -R /opt/mongodb/

10、编辑系统配置文件

[root@master ~]# vim /etc/profile

11、编辑、写入内容

export MONGODB_HOME="/opt/mongodb/mongodb-linux-x86_64-4.0.22"
export PATH=$PATH:$MONGODB_HOME/bin

12、使配置的系统环境变量生效

[root@master ~]# source /etc/profile

13、查看 MongoDB 版本

[root@master ~]# mongod -v

在这里插入图片描述
14、MongoDB 服务启动(根据自己需要选择启动形式)

# 控制台启动
[root@master ~]# mongod -f /opt/mongodb/mongodb-linux-x86_64-4.0.22/conf/mongodb.conf
# 后台启动
[root@master ~]# nohup  mongod -f /opt/mongodb/mongodb-linux-x86_64-4.0.22/conf/mongodb.conf &

15、查看服务的启动情况

[root@master ~]# netstat -lntp
tcp        0      0 0.0.0.0:27017           0.0.0.0:*               LISTEN      2165/mongod 

16、进入 MongoDB 的命令行创建数据库(此处我没设置密码,生产、开发过程中建议设置密码)

[root@master ~]# mongo
> show dbs;
admin   0.000GB
config  0.000GB
local   0.000GB
> use yapi;
switched to db yapi
> db;
yapi

17、MongoDB 其他安装、操作方式
docker 安装

// 1.docker  环境配置(略)
// 2.运行mongo服务,因为是测试所以也不设置用户名密码了
docker run -d --name yapi-mongo -p 27017:27017 mongo
// 3.进入mongo服务
docker exec -it yapi-mongo bash
// 4.进入mongo交互命令环境
mongo
// 5.创建名为yapi的DB,这个在可视化部署用得上
use yapi
// 6.查看所有DB
show dbs

五、内网部署 YApi

1、Nodejs环境安装
参考 https://blog.csdn.net/llwy1428/article/details/111880286
其他参考 官网

sudo yum install gcc-c++ make
curl -sL https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
sudo yum install yarn
curl --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
sudo yum -y install nodejs

2、方式一

2.1、npm 安装 yapi

[root@master ~]# npm install -g yapi-cli --registry https://registry.npm.taobao.org
# 进行初始化
[root@master ~]# yapi server
在浏览器打开 http://0.0.0.0:9090 访问。非本地服务器,请将 0.0.0.0 替换成指定的域名或ip

2.2、创建系统目录,来存放 yapi 安装文件

[root@master ~]# mkdir -p /opt/util/my-yapi

2.3、浏览器录入 http://【 你服务器的 IP 】:9090/
YApi 平台初始化
(1)选择版本、公司名称、部署在系统中的绝对路径
(2)YApi 平台的端口
(3)MongoDB 数据库所在服务的 IP
(4)MongoDB 数据库服务的端口
(5)MongoDB 数据库中创建的数据库(存放 YApi 使用过程中的所有数据)
(6)如果 MongoDB 中设置了密码,则要填写相应的数据库认证
在这里插入图片描述
2.4、开始部署(需要几分钟)
在这里插入图片描述
2.5、部署完毕
在这里插入图片描述
控制台信息
在这里插入图片描述
2.6、初始化管理员账号成功,账号名:“admin@admin.com”,密码:“ymfe.org”
部署成功,请切换到部署目录,输入: “node vendors/server/app.js” 指令启动服务器, 然后在浏览器打开 http://【YApi 服务器 IP】:3000 访问

2.7、进入 YApi 的系统部署目录 /opt/util/my-yapi/ 查看目录文件

[root@master ~]# cd /opt/util/my-yapi/
[root@master my-yapi]# ll
总用量 8
-rw-r--r--  1 root root  362 1月  30 01:04 config.json
-rw-r--r--  1 root root    0 1月  30 01:05 init.lock
drwxr-xr-x  2 root root   24 1月  30 01:05 log
drwxr-xr-x 10 root root 4096 1月  30 01:05 vendors

2.8、查看 YApi 的配置文件信息

[root@master my-yapi]# cat config.json 
{
   "port": "3000",
   "adminAccount": "admin@admin.com",
   "db": {
      "servername": "192.168.11.21",
      "DATABASE": "yapi",
      "port": "27017"
   },
   "mail": {
      "enable": false,
      "host": "smtp.163.com",	//邮箱服务器
      "port": 465,				//端口
      "from": "***@163.com",	//发送人邮箱
      "auth": {
         "user": "***@163.com",	//邮箱服务器账号
         "pass": "*****"		//邮箱服务器密码
      }
   }
}

2.9、配置 LDAP 登录

[root@master my-yapi]# vim config.json 
{
   "port": "3000",
   "adminAccount": "admin@admin.com",
   "db": {
      "servername": "192.168.11.21",
      "DATABASE": "yapi",
      "port": "27017"
   },
   "mail": {
      "enable": false,
      "host": "smtp.163.com",	//邮箱服务器
      "port": 465,				//端口
      "from": "***@163.com",	//发送人邮箱
      "auth": {
         "user": "***@163.com",	//邮箱服务器账号
         "pass": "*****"		//邮箱服务器密码
      }
   },
   "ldapLogin": {
      "enable": true,
      "server": "ldap://l-ldapt1.com",
      "baseDn": "CN=Admin,CN=Users,DC=test,DC=com",
      "bindPassword": "password123",
      "searchDn": "OU=UserContainer,DC=test,DC=com",
      "searchStandard": "mail",    // 自定义格式: "searchStandard": "&(objectClass=user)(cn=%s)"
      "emailPostfix": "@163.com",
      "emailKey": "mail",
      "usernameKey": "name"
   }
}

LDAP 登录里面的配置项含义如下:
enable 表示是否配置 LDAP 登录,true(支持 LDAP登录 )/false(不支持LDAP登录);
server LDAP 服务器地址,前面需要加上 ldap:// 前缀,也可以是 ldaps:// 表示是通过 SSL 连接;
baseDn LDAP 服务器的登录用户名,必须是从根结点到用户节点的全路径(非必须);
bindPassword 登录该 LDAP 服务器的密码(非必须);
searchDn 查询用户数据的路径,类似数据库中的一张表的地址,注意这里也必须是全路径;
searchStandard 查询条件,这里是 mail 表示查询用户信息是通过邮箱信息来查询的。注意,该字段信息与LDAP数据库存储数据的字段相对应,如果如果存储用户邮箱信息的字段是 email, 这里就需要修改成 email.(1.3.18+支持)自定义filter表达式,基本形式为:&(objectClass=user)(cn=%s), 其中%s会被username替换
emailPostfix 登陆邮箱后缀(非必须)
emailKey: ldap数据库存放邮箱信息的字段(v1.3.21 新增 非必须)
usernameKey: ldap数据库存放用户名信息的字段(v1.3.21 新增 非必须)
重启服务器后,可以在登录页看到如下画面,说明 ladp 配置成功

2.10、YApi 服务启动

# 控制台启动
[root@master my-yapi]# node vendors/server/app.js
# 后台启动( 使用 pm2 启动、管理 app.js )
[https://blog.csdn.net/llwy1428/article/details/113487584](https://blog.csdn.net/llwy1428/article/details/113487584)

2.11、我使用了控制台启动

[root@master my-yapi]# node vendors/server/app.js
log: -------------------------------------swaggerSyncUtils constructor-----------------------------------------------
log: 服务已启动,请打开下面链接访问: 
http://127.0.0.1:3000/
log: mongodb load success...

2.12、查看启动状态

[root@master ~]# netstat -lntp
tcp        0      0 0.0.0.0:27017           0.0.0.0:*               LISTEN      2165/mongod 
tcp6       0      0 :::3000                 :::*                    LISTEN      2376/node

3、方式二(官网)我这里没有具体操作

mkdir yapi
cd yapi
git clone https://github.com/YMFE/yapi.git vendors //或者下载 zip 包解压到 vendors 目录(clone 整个仓库大概 140+ M,可以通过 git clone --depth=1 https://github.com/YMFE/yapi.git vendors 命令减少,大概 10+ M)
cp vendors/config_example.json ./config.json //复制完成后请修改相关配置
cd vendors
npm install --production --registry https://registry.npm.taobao.org
npm run install-server //安装程序会初始化数据库索引和管理员账号,管理员账号名可在 config.json 配置
node server/app.js //启动服务器后,请访问 127.0.0.1:{config.json配置的端口},初次运行会有个编译的过程,请耐心等候

六、基本配置、操作

1、浏览器地址栏录入 http://【YApi 服务器 IP】:3000 可进入首页
在这里插入图片描述
2、点击 登录 / 注册 使用管理员默认账号和密码登录
账号:“admin@admin.com”,密码:“ymfe.org”
在这里插入图片描述
3、引导
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4、新建项目
在这里插入图片描述
5、项目列表
在这里插入图片描述
6、添加接口在这里插入图片描述
7、接口列表
在这里插入图片描述
8、接口基本信息
在这里插入图片描述
9、测试集合
在这里插入图片描述
10、测试集合下配置要测试的已有接口
在这里插入图片描述
在这里插入图片描述
11、动态:系统操作日志
在这里插入图片描述
12、数据管理
在这里插入图片描述
13、设置—项目配置
在这里插入图片描述
14、设置—环境配置
在这里插入图片描述
15、设置—请求配置
在这里插入图片描述
16、设置—token配置
在这里插入图片描述
17、设置—全局 mock 脚本
在这里插入图片描述
18、设置—生产 ts services
在这里插入图片描述
19、设置— Swagger 同步
在这里插入图片描述
20、Wiki 文档管理
在这里插入图片描述
在这里插入图片描述
21、系统管理员—个人中心
在这里插入图片描述
22、系统管理员—个人设置
在这里插入图片描述
23、系统管理员—用户管理
在这里插入图片描述
24、非管理员注册
在这里插入图片描述
25、系统管理员—查看所有人员列表,管理员可修改指定人员密码等
在这里插入图片描述
26、系统管理员—系统信息
在这里插入图片描述
27、添加分组
在这里插入图片描述
28、给新建的小组添加新项目,按分组显示项目列表
在这里插入图片描述
29、对小组添加成员,可指定成员权限
在这里插入图片描述
30、查看小组成员列表
在这里插入图片描述
31、普通用户的个人设置
在这里插入图片描述

至此,Centos7.x YApi 私有化部署、基本操作完毕,希望能够对您有所帮助!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值