yapi 的部署需要依赖 node.js 和 MongoDB
成都创新互联是一家集网站建设,西区企业网站建设,西区品牌网站建设,网站定制,西区网站建设报价,网络营销,网络优化,西区网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
首先进行安装 node
执行如下命令:
curl --silent --location https://rpm.nodesource.com/setup_10.x | bash -
yum install -y nodejs
安装完成后接下来安装 mongodb
安装mogodb
首先去mogodb去下载最新的安装包。下载地址:
https://www.mongodb.com/download-center#community
现在完成后解压压缩包
tar zxf mongodb-linux-i686-1.8.2.tgz
安装准备:
将mongodb移动到/usr/local/server/mongdb文件夹
mv mongodb-linux-i686-1.8.2 /usr/local/mongodb
创建数据文件存储的位置和日志
cd /usr/local/server/mongodb
mkdir data
touch logs
启动mongodb
cd /usr/local/server/mongodb/mongodb-linux-i686-1.8.2/bin
## 不需要认证启动
./mongod --dbpath=/usr/local/server/mongodb/data --logpath=/usr/local/server/mongodb/logs --logappend --fork
## 需要认证启动
./mongod --dbpath=/usr/local/server/mongodb/data --logpath=/usr/local/server/mongodb/logs --auth --logappend --fork
如果需要设置开机启动的话可以这样操作:
echo " /usr/local/server/mongodb/mongodb-linux-i686-1.8.2/bin --dbpath=/usr/local/server/mongodb/data --logpath=/usr/local/server/mongodb/logs --auth --logappend --fork" >> /etc/rc.local
参数解释:
--dbpath 数据库路径(数据文件)
--logpath 日志文件路径
--master 指定为主机器
--slave 指定为从机器
--source 指定主机器的IP地址
--pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。
--logappend 日志文件末尾添加
--port 启用端口号
--fork 在后台运行
--only 指定只复制哪一个数据库
--slavedelay 指从复制检测的时间间隔
--auth 是否需要验证权限登录(用户名和密码)
mongodb安装好后就可以安装 yapi 了
可视化部署YAPI
执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node/{网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
运行完成后会提示:在浏览器打开 http://0.0.0.0:9090 访问。非本地服务器,请将 0.0.0.0 替换成指定的域名或ip
此时需要在浏览器中打开:http://ip:9090 进行可视化安装。如果访问不通则有可能是防火墙未开放的原因导致,接下来就需要开放端口
防火墙端口开放
首先查询 9090 端口是否开放
firewal-cmd --query-port=9090/tcp
## 此时若提示 no 则表示端口未开放
开放端口
firewall-cmd --zone=public --add-port=9090/tcp --permanent
参数说明:
zone:作用域
tcp:表示使用tcp协议
permanent:表示永久生效
查询是否成功
firewal-cmd --query-port=9090/tcp
## 此时提示 Success 则表示端口开放
然后重启防火墙
systemctl restart firewalld
在运行的过程中发现:node app.js 命令在执行过程并不是用守护线程启动,线程退出后服务就终止了。因此需要使用守护线程来启动 nodejs 可以使用 forver 插件来启动
首先安装 forever 插件
npm install -g forever
安装完成后启动服务:
## app.js 是指要运行的应用
forever start app.js
forever stop app.js
参考文章:
https://hellosean1025.github.io/yapi/devops/index.html
https://www.cnblogs.com/zouke1220/p/9723191.html
https://www.cnblogs.com/phpk/p/10937534.html