本文共 2420 字,大约阅读时间需要 8 分钟。
今天介绍下Yapi的接口管理工具的部署。
1.1 环境
操作系统:CentOS 7 (CentOS-7-x86_64-Minimal-1708)环境要求:nodejs(7.6+),mongodb(2.6+)
部署nodejs尽可能选择偶数版本,因为偶数版本官方有较长的维护时间,故这次选择8.x。
curl -sL | bash -
安装
yum install -y nodejs
node -v
npm -v
mongodb奇数版(如3.5)是开发版本,故选择安装v3.4。
vim /etc/yum.repos.d/mongodb-3.4.repo
添加下面的内容,wq保存。
[mongodb-org-3.4]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/RedHat/$releasever/mongodb-org/3.4/x86_64/gpgcheck= 0enabled=1
yum install -y mongodb-org
官方教程有提到selinux对mongodb会产生负面影响,故选择禁用。
vim /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled,wq保存。
reboot
3.4 关闭防火墙
由于需要做数据迁移,所以直接省事将防火墙直接关了。
service mongod restart
npm install -g yapi-cli --registry
yapi server
根据提示,浏览器访问 http://部署YApi服务器的IP:9090。
填写完信息后,点击“开始部署”。(大概等待1分钟)
yapi-vendor@1.7.0 install-server /etc/my-yapi/vendors
node server/install.js
这里我们不急着根据提示进行启动,有些参数我们可以通过修改配置达到。
vim /root/my-yapi/config.json
修改下面的内容(邮箱可以不用163的),wq保存。
{ "port": "80", "adminAccount": "yizitadmin@yizit.cn", "db": { "servername": "127.0.0.1", "DATABASE": "yapi", "port": "27017" }, "mail": { "enable": true, "host": "smtp.163.com", "port": 465, "from": "可用于发送邮件的163邮箱", "auth": { "user": "163邮箱", "pass": "163邮箱对应的密码或授权码" } }}
4.3 启动
cd /etc/my-yapi
node vendors/server/app.js
由于修改了配置,所以直接访问 。
(ps:没有进行4.2修改配置的话是访问http://部署YApi服务器的IP:3000/login)
初始化账号:`部署填写的邮箱` , 密码:"ymfe.org" 登录后可以进行修改。
5.1 编写/etc/supervisor/conf.d/yapi.ini
[program:yapi]directory = /etc/my-yapicommand=node vendors/server/app.jsuser =rootautostart=trueautorestart=truestartsecs=5stderr_logfile=/etc/my-yapi/err.logstdout_logfile=/etc/my-yapi/out.log
5.2 加载supervisor配置并重启服务。
sudo supervisord -c /etc/supervisor/supervisord.conf
sudo supervisorctl -c /etc/supervisor/supervisord.conf
5.3 查看运行状态
注意:
1.由于我是在测试机上部署环境,9090,3000不对外开放,所以我做了反向代理,最后的proxy配置如下:server { listen 80; server_name yapi.co; location / { charset utf-8; #开启http1.1,支持长连接 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; #反向代理到3000端口 proxy_pass http://127.0.0.1:3000; }}
1.
2.转载于:https://blog.51cto.com/onebig/2386082