搭建yapi-2024

一、 安装node

注意:node需要使用12版本

1.1 nvm安装node

可以使用官方的安装方式

Node.js — Download Node.js®

1.2 手动安装

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 下载node 从官方网站找
wget https://registry.npmmirror.com/-/binary/node/v12.9.1/node-v12.9.1-linux-x64.tar.gz
# 解压
tar -xf node-v12.9.1-linux-x64.tar.gz
# 重命名
mv ./node-v12.9.1-linux-x64 /opt/nodejs-v12.9.1
# 配置环境变量
sudo vim /etc/profile
# 添加下面两行内容
export NODE_HOME=/opt/nodejs-v12.9.1
export PATH=$NODE_HOME/bin:$PATH
# 刷新配置文件
source /etc/profile
# 查看版本
node -v
npm -v

二、安装mongodb

使用docker 安装 , docker 怎么安装在这里就不说了。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 下载镜像
docker pull mongo
# 运行
docker run -itd --name mongo-container -p 27017:27017 mongo:latest --auth
# 进入容器
docker exec -it mongo-container mongosh test
# 切换数据库
use admin
# 新建管理员用户
db.createUser( { user: "root", pwd: "root", roles: [ { role: "root", db: "admin" } ] } )
# 授权
db.auth('root','root')
# 切换 yapi 数据库 注意修改密码
use yapi
# 新增 yapi 用户 注意修改密码
db.createUser( { user: "yapi", pwd: "yapi", roles: [ { role: "readWrite", db: "yapi" }, "readWrite" ] } )

三、安装yapi

安装yapi自动安装插件

1
2
3
4
# 安装yapi自动安装插件
npm install -g yapi-cli --registry https://registry.npmmirror.com
# 运行
yapi server

访问服务器的9090端口进行配置

在页面进行自动安装的时候会失败,这时没有关系,我们进行手动安装。

1
2
3
4
5
6
7
8
9
# 进入到vendors文件夹
cd /opt/my-yapi/vendors
# 安装依赖
npm install --production --registry https://registry.npmmirror.com
# 安装yapi服务 初始密码:ymfe.org
npm run install-server
# 运行
cd ..
node ./vendors/server/app.js

修改配置 关闭注册

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"port": "3000",
"adminAccount": "admin@xia17.com",
"closeRegister":false,
"db": {
"servername": "127.0.0.1",
"DATABASE": "yapi",
"port": "27017",
"user": "yapi",
"pass": "yapi6666"
},
"mail": {
"enable": false,
"host": "smtp.163.com",
"port": 465,
"from": "***@163.com",
"auth": {
"user": "***@163.com",
"pass": "*****"
}
}
}

四、安装pm2

使用pm2运行yapi

1
2
3
4
5
# 安装pm2
npm install -g pm2 --registry https://registry.npmmirror.com
# 运行yapi
pm2 start /opt/my-yapi/vendors/server/app.js --name='yapi'

pm2 常用命令

1
2
3
4
5
6
# 显示运行的任务 
pm2 list
# 重启应用 all表示所有 all 可以换成应用name
pm2 restart all
# 停止应用 all表示所有
pm2 stop all