YAPI是由由哪哪儿网大前端技术中心(YMFE)团队设计用于进行api接口管理的软件产品,其拥有权限管理,可视化接口管理,易用的模拟服务器,自动化测试,数据导入,插件机制,计在为开发,产品,测试人员提供更优雅的接口管理服务。可以帮助开发者轻松创建,发布,维护API。
下面主要来具体阐述如何构建一个雅皮平台软件,参考文档/devops/
关闭防火墙,SELinux
1.安装部署nodejs
1.1下载官方安装包并解压,我下载的是最新版的:https:///dist/v10.14.2/node-v10.14.
wget -O node-v10.14. /dist/v10.14.2/node-v10.14.
tar -xf node-v10.14.
1.2部署环境
mv node-v10.14. /usr/local/node/
echo 'export NODE_HOME=/usr/local/node' >> /etc/profile
echo 'export PATH=$NODE_HOME/bin:$PATH' >> /etc/profile
source /etc/profile
1.3检查暗转情况,看是否提示两个的版本号信息
node -v ; npm -v
2.安装部署mongodb
cat > /etc// << EOF
[mongodb-org-3.2]
name=MongoDB Repository
baseurl=/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=/static/pgp/server-3.
EOF
yum clean all ; yum repolist
yum install -y mongodb-org
# 启动服务
systemctl restart mongod
systemctl enable mongod
配置数据库,使用命令mongo进行操作
use admin
#创建dba用户
(
{
user: "dba",
pwd: "DbaPassword",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
}
)
#创建yapi数据库
use yapi
# 给yapi数据库添加test1用户(yapi默认的账号密码),权限为读写
(
{
user: "test1",
pwd: "test1",
roles: [
{ role: "readWrite", db: "yapi" }
]
}
)
3.安装git
yum install -y git
# 检查是否安装成功
git --version
部署yapi
4.1创建工作目录
makdir yapi ; cd yapi
4.2下载github中的yapi文件(在工作目录下)
git clone /YMFE/ vendors
4.3修改配置信息(具体的邮件部署和ldap登录部署就不详细讲解了),配置文件是/ yapi工作目录/vendors/config_example.json
{
"port": "3000",
"adminAccount": "admin@", # 管理员账号
"db": {
"servername": "127.0.0.1", # mongodb服务器的主机名
"DATABASE": "yapi", # 数据库中yapi数据存放的数据库名
"port": 27017, # 数据库的连接节点信息
"user": "test", # 连接数据库的用户信息
"pass": "test", # 连接数据库的密码
"authSource": ""
}
}
4.4拷贝配置文件至指定位置,并安装(在工作目录下)
# 这个操作很关键,必须在工作目录下执行,不然一定失败
cp vendors/config_example.json
cd vendors/ ; npm install --production --registry
4.5运行启动服务(在供应商目录下)
npm run install-server
npm install -S pm2 && npx pm2 start ./server/
*。然后就可以前往3000端口进行使用了
在搭建过程中,可能出现各种各样的问题,我把我遇到的分享出来
1.出现提示:代码ELIFECYCLE
故障猜测:安装意外中断导致有破损文件
解决方案:删除所有历史安装内容,再重新用安装
rm -rf node_modules
rm -f
npm cache clear --force
2.出现提示:stack错误:EACCES:权限被拒绝,mkdir'/root/yapi/vendors/node_modules/dtrace-provider/.node-gyp'
故障猜测:yapi权限不足,不能进入指定目录
解决方案:
1。在npm install命令后面加上--unsafe-perm = true --allow-root
2.看错误信息,直接手动mkdir -p创建
3。在一个所有用户都能进入的目录下常见一个目录,并且这个目录任何用户可以进入
3.出现提示:peerinvalid Peer mongoose-simpledb@4.0.3想要
mongoose@~3.8.18故障猜测:依赖未能解决
解决方案:把需要的包加到的依赖关系键值内
4.安装后我曾出现登录进去报告java运行中某个类不存在,我考虑到这个可能是是我下载的包有问题,所以我删除了yapi工作目录,重新装了一遍就好了