当前位置: 首页 > news >正文

阿里云服务器,CentOS7.9上安装YApi 接口管理平台

   

目录

1.node安装

1.1下载node,解压

1.2 部署bin文件

1.3 安装mongodb

2.启动yapi

2.1  前置命令

2.2 启动服务

3.利用pm2方便服务管理维护

3.1.安装pm2

3.2 常用 PM2 命令

4.常见问题

4.1. 确认 MongoDB 是否安装

4.2. 安装 MongoDB(若未安装)

4.3. 如果 MongoDB 已安装但服务未启动

4.4. 检查 MongoDB 数据目录

4.5. 重新启动 YApi

4.6. 验证 YApi 数据持久化


阿里云服务器申请过程,这个步骤省略了,以下是搭建YApi - 接口管理平台的过程

安装Yapi环境要求:

nodejs(7.6+)
mongodb(2.6+)
git

1.node安装

 1.1下载node,解压

使用wget直接下载

命令:cd /usr/local
然后输入命令:
wget https://nodejs.org/download/release/v12.18.4/node-v12.18.4-linux-x64.tar.xz
解压缩
xz -d node-v12.18.4-linux-x64.tar.xz
tar -xf node-v12.18.4-linux-x64.tar 

下载后。mv 命令重命名下:

 mv node-v12.18.4-linux-x64 node

 

1.2 部署bin文件

命令

ln -s /usr/local/node/bin/node /usr/bin/node
ln -s /usr/local/node/bin/npm /usr/bin/npm
ln -s /usr/local/node/bin/npx /usr/bin/npx

1.3 安装mongodb

  下载mongodb压缩包到本地,解压缩文件,移动并重命名mongodb

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.22.tgz

# 解压压缩包
tar -zxvf mongodb-linux-x86_64-rhel70-4.4.22.tgz
# 移动node位置并重新命名
mv mongodb-linux-x86_64-rhel70-4.4.22 /usr/local/mongodb

配置mongoDB文件夹和配置文件,进入mongodb目录 cd /usr/local/mongodb
执行mkdir data用来存放mongodb的数据库数据
执行mkdir logs用来存放mongodb运行产生的日志

创建mongodb.conf文件

touch mongodb.conf
更改权限:
chmod +x mongodb.conf

然后复制下面的命令到mongodb.conf里面,vi mongodb.conf

# 日志文件位置
logpath=/usr/local/mongodb/logs/mongod.log
# 以追加方式写入日志
logappend=true
# 是否以守护进程方式运行
fork=true
# 默认27017
port = 27017
# 数据库文件位置
dbpath=/usr/local/mongodb/data
# 允许哪个ip的连接,0.0.0.0表示任意ip都可以连接
bind_ip=0.0.0.0
# 是否以安全认证方式运行,默认是不认证的非安全方式
auth = false

将mongoDB的命令,添加到profile中

vim /etc/profile
# 文件尾部添加一行
export PATH=/usr/local/mongodb/bin:$PATH

# 刷新使修改生效
source /etc/profile

启动mongodb,进入到 /usr/local/mongodb/bin 下面,执行

mongod -f mongodb.conf

 出现successfully,代表启动成功。

2.启动yapi

2.1  前置命令

然后输入命令:

回到主目录
cd 执行命令清除npm缓存:
npm cache clean --force执行命令取消ssl验证
npm config set strict-ssl false然后重新执行npm install -g yapi-cli --registry https://registry.npm.taobao.org

然后输入命令:

切换目录:
cd /usr/local/node/bin./yapi server

 2.2 启动服务

在浏览器输入:http://101.132.58.85:9090/,选择这个版本

初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"

部署成功,请切换到部署目录,输入: "node vendors/server/app.js" 指令启动服务器, 然后在浏览器打开 http://127.0.0.1:3000 访问

如果无法访问这个页面,得在阿里云安全组设置端口访问

 启动yapi

如果不知道yapi安装目录,用命令:
find / -name "config.json" | grep yapi然后到目录
/usr/local/node/bin/my-yapi/vendors/server启动yapi
node app.js后台运行,关掉窗口后yapi还在
node app.js &

YApi-高效、易用、功能强大的可视化接口管理平台

3.利用pm2方便服务管理维护

3.1.安装pm2

   由于命令管理yapi不方便比如想停止yapi进程:

[root@iZuf6iom68zjwhoqb0cw70Z server]# ps aux | grep "node app.js"
root      4476  0.0  0.0 112812   992 pts/1    S+   22:08   0:00 grep --color=auto node app.js
root     30798  0.6  3.3 659992 59804 pts/0    Sl   21:57   0:03 node app.js
[root@iZuf6iom68zjwhoqb0cw70Z server]# kill -9 30798  # 强制终止
[root@iZuf6iom68zjwhoqb0cw70Z server]# 
# 安装 PM2
npm install pm2 -g

# 切换到 YApi 目录
cd /usr/local/node/bin/my-yapi/vendors/server# 用 PM2 启动 YApi(命名为 yapi)
pm2 start app.js --name yapi

如果报错误:-bash: pm2: command not found

那么是环境变量没有安装

npm list -g | grep pm2

如果输出中包含 pm2(例如 /usr/local/lib/node_modules/pm2),说明已安装,但系统找不到它。

运行以下命令,查看 npm 全局包的安装位置:

npm config get prefix

典型输出可能是:

  • /usr/local(默认)

  • /usr/local/node(自定义路径)

  • /root/.nvm/versions/node/[版本号](如果使用 nvm 管理 Node.js)

假设输出是 /usr/local/node,则 PM2 的可执行文件路径为:
/usr/local/node/bin/pm2

将路径添加到 PATH 环境变量

vi /etc/profile
添加
export PATH=$PATH:/usr/local/node/binsource  /etc/profile确保 Node.js 和 npm 已正确安装

 再次执行

# 切换到 YApi 目录
cd /usr/local/node/bin/my-yapi/vendors/server# 用 PM2 启动 YApi(命名为 yapi)
pm2 start app.js --name yapi# 设置开机自启
pm2 startup
pm2 save

3.2 常用 PM2 命令

# 查看 YApi 运行状态
pm2 status yapi# 查看日志
pm2 logs yapi# 重启 YApi
pm2 restart yapi# 停止 YApi
pm2 stop yapi# 监控资源占用
pm2 monit

浏览器访问 http://你的服务器IP:3000 确认 YApi 界面是否加载。

完成后,YApi 将由 PM2 守护运行,即使服务器重启也会自动恢复。

4.常见问题

如果遇到注册一个账号隔一会或第二天就提示不存在了

4.1. 确认 MongoDB 是否安装

运行以下命令检查 MongoDB 是否已安装:

bash

复制

下载

# 检查 MongoDB 程序是否存在
which mongod# 或查看安装包
rpm -qa | grep mongo
  • 如果无输出,说明 MongoDB 未安装,需先安装。

  • 如果有输出(如 mongodb-org-server-4.4.x),说明已安装但服务未正确配置。


4.2. 安装 MongoDB(若未安装)

步骤 1:添加 MongoDB 官方仓库

bash

复制

下载

# 创建 MongoDB 仓库文件
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-4.4.repo
[mongodb-org-4.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
EOF

步骤 2:安装 MongoDB

bash

复制

下载

sudo yum install -y mongodb-org# 启动服务并设置开机自启
sudo systemctl start mongod
sudo systemctl enable mongod

步骤 3:验证服务状态

bash

复制

下载

sudo systemctl status mongod  # 确认状态为 "active (running)"

4.3. 如果 MongoDB 已安装但服务未启动

可能原因

  • 服务名称不符(如某些系统使用 mongodb 而非 mongod)。

  • 服务文件未正确生成。

解决方案

bash

复制

下载

# 尝试其他常见服务名称
sudo systemctl status mongodb# 手动查找服务文件
ls /usr/lib/systemd/system/mongod*  # 或 mongodb*# 如果存在服务文件但未启动
sudo systemctl start mongod
sudo systemctl enable mongod

4.4. 检查 MongoDB 数据目录

YApi 的数据依赖 MongoDB,需确保数据目录存在且权限正确:

bash

复制

下载

# 默认数据目录
ls -l /var/lib/mongo# 如果目录不存在,手动创建并授权
sudo mkdir -p /var/lib/mongo
sudo chown -R mongod:mongod /var/lib/mongo

4.5. 重新启动 YApi

确保 MongoDB 正常运行后,重启 YApi:

bash

复制

下载

cd /usr/local/node/bin/my-yapi/vendors/server
pm2 restart app.js --name yapi

4.6. 验证 YApi 数据持久化

连接到 MongoDB 检查 YApi 的账号数据是否存在:

bash

复制

下载

mongo
use yapi
db.user.find()  # 查看已注册的用户
  • 如果 user 集合为空,说明之前的数据未持久化,需重新注册账号并观察是否再次丢失。

 

http://www.dtcms.com/a/274594.html

相关文章:

  • Linux修炼:权限
  • vue2往vue3升级需要注意的点(个人建议非必要别直接升级)
  • 基于规则匹配的文档标题召回
  • Leaflet面试题及答案(21-40)
  • PHT-CAD 笔记
  • 【每日算法】专题八_分治_归并排序
  • k8s新增jupyter服务
  • 7.11 dp 图
  • 企业IT管理——医院数据备份与存储制度模板
  • spring-ai RAG(Retrieval-Augmented Generation)
  • 【网络】Linux 内核优化实战 - net.netfilter.nf_conntrack_max
  • 【网络】Linux 内核优化实战 - net.netfilter.nf_conntrack_buckets
  • 基于深度学习的人类活动识别模型研究:HAR-DeepConvLG的设计与应用
  • C++,从汇编角度看《虚拟继承的邪恶》
  • 多模态联邦学习
  • STM32F103ZET6 TFTLCD显示图片
  • Docker构建银河麒麟arm架构redis镜像
  • Windows下基于docker desktop 使用Claude code
  • MySQL中使用group_concat遇到的问题及解决
  • 容器管理: 单机用Docker Compose,多机用Kubernetes
  • Docker高级管理--Dockerfile 镜像制作
  • 8.卷积神经网络基础
  • CSS 版本迭代历史和版本特性
  • ffmpeg-api记录
  • 8、鸿蒙Harmony Next开发:相对布局 (RelativeContainer)
  • PortsWiggerLab: Blind OS command injection with output redirection
  • 2D下的几何变换(C#实现,持续更新)
  • linux获取NTP方式
  • ubuntu22默认安装firefox使用snap安装还老打不开解决办法
  • 【Spring】拦截器详解