CentOS部署yapi
转载自 https://www.linuxidc.com/Linux/2018-01/150513.htm
在mongoDB添加yum源时,源路径有修改,原文中的路径404不可用
二、部署nodejs
部署nodejs尽可能选择偶数版本,因为偶数版本官方有较长的维护时间,故这次选择8.x。
# 获取资源
- curl -sL https://rpm.nodesource.com/setup_8.x | bash -
# 安装
- yum install -y nodejs
# 查看node版本
- node -v
# 查看npm版本
- npm -v
三、部署mongodb
mongodb装的是2.6
3.1 添加yum源
# 修改文件mongodb.repo
- vim /etc/yum.repos.d/mongodb.repo
添加下面的内容,wq保存。
- [mongodb-org]
- name=MongoDB Repository
- baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
- gpgcheck= 0
- enabled=1
3.2 安装
- yum install -y mongodb-org
3.3 禁用selinux
官方教程有提到selinux对mongodb会产生负面影响,故选择禁用。
# 修改config文件
- vim /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled,wq保存。
# 重启OS
- reboot
3.4 关闭防火墙
由于需要做数据迁移,所以直接省事将防火墙直接关了。
# 关闭,并取消开机启动
- systemctl stop firewalld
- systemctl disable firewalld
3.5 启动
- systemctl start mongod
四、部署YApi
4.1 安装
- npm install -g yapi-cli --registry https://registry.npm.taobao.org
- yapi server
根据提示,浏览器访问 http://部署YApi服务器的IP:9090。
填写完信息后,点击“开始部署”。(大概等待1分钟)
# 退出当前状态
CTRL + C
4.2 修改配置
这里我们不急着根据提示进行启动,有些参数我们可以通过修改配置达到。
# 修改config.json
- vim /root/my-yapi/config.json
修改下面的内容(我用的qq邮箱,不同的邮箱host,port有所不同),wq保存。
- {
- "port": "80", // 可不改,80是http协议的默认端口,这样修改访问时可以不输入ip.不改则用3000端口访问
- "adminAccount": "yizitadmin@yizit.cn",
- "db": {
- "servername": "127.0.0.1",
- "DATABASE": "yapi",
- "port": "27017"
- },
- "mail": {
- "enable": true,
- "host": "smtp.qq.com",
- "port": 465,
- "from": "可用于发送邮件的邮箱",
- "auth": {
- "user": "邮箱",
- "pass": "邮箱对应的密码或授权码"
- }
- }
- }
4.3 启动
# 切换到部署目录下
- cd /root/my-yapi
# 启动服务
- node vendors/server/app.js
由于修改了配置,所以直接访问 http://部署YApi服务器的IP/login。
(ps:没有进行4.2修改配置的话是访问http://部署YApi服务器的IP:3000/login)
五、部署Supervisor
Supervisor是守护进程服务,在没有守护进程之前存在一些问题:
- 应用程序运行在当前终端发起的子shell中,hangup信号中断后会导致应用退出,我们不可能在长期使用的环境中用一个终端去做长连接。
- 当服务器重启后,还是需要人工连上服务器启动服务。
- 进程出现意外终止,等人为发现再连上去开启,这样的反应显然已经慢了。
5.1 安装
- yum install python-setuptools -y
- easy_install supervisor
5.2 修改配置
# 创建目录/etc/supervisor
- mkdir /etc/supervisor
# 创建supervisord.conf模板文件
- echo_supervisord_conf > /etc/supervisor/supervisord.conf
# 修改文件supervisord.conf
- vim /etc/supervisor/supervisord.conf
增加下面的内容,wq保存。
- [include]
- files = conf.d/*.conf
如果服务已启动,修改配置文件可用“supervisorctl reload”命令来使其生效)
# 创建目录/etc/supervisor/conf.d/
- mkdir -p /etc/supervisor/conf.d/
# 修改文件YApi.conf
- vim /etc/supervisor/conf.d/YApiGhost.conf
增加下面的内容,wq保存。
- [program: YApiGhost]
- command=node vendors/server/app.js ; 运行程序的命令
- directory=/root/my-yapi ; 命令执行的目录
- autorestart=true ; 程序意外退出是否自动重启
- stderr_logfile=/var/log/YApiGhost.err.log ; 错误日志文件
- stdout_logfile=/var/log/YApiGhost.out.log ; 输出日志文件
- environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量
- user=root ; 进程执行的用户身份
- stopsignal=INT
5.3 启动
# 根据supervisord.conf启动守护进程
- supervisord -c /etc/supervisor/supervisord.conf
# 查看进程
- ps -ef | grep YApiGhost
如果存在YApiGhost 进程则代表运行成功。
5.4 设置为开机启动
# 修改文件supervisord.service
- vim /usr/lib/systemd/system/supervisord.service
添加下面的内容,wq保存。
- [Unit]
- Description=Supervisor daemon
- [Service]
- Type=forking
- ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
- ExecStop=/usr/bin/supervisorctl shutdown
- ExecReload=/usr/bin/supervisorctl reload
- KillMode=process
- Restart=on-failure
- RestartSec=42s
- [Install]
- WantedBy=multi-user.target
# 开机启动
- systemctl enable supervisord
参考资料:
1.https://github.com/YMFE/yapi
2.http://www.linuxidc.com/Linux/2018-01/150512.htm
3.https://github.com/nodesource/distributions#rpm
5.https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/
CentOS部署yapi的更多相关文章
- centos部署yapi爬坑记
前言 这几天终于完成了为期三个月的公司某个demo版的项目,在这期间和公司的后台因为API的事怼过无数次了,'我的接口没问题,是你请求的方式不对吧!'.'一定是你请求的参数不对'......诸如此类问 ...
- (转)Centos下,Docker部署Yapi接口管理平台
接口测试的工具很多,公司引进了接口管理平台Yapi,自己尝试直接搭建,从安装Nodejs到配置MongoDB数据库,再到安装yapi的时候,遇到浏览器打开本地服务器Ip地址后,没有显示部署内容...没 ...
- Centos下,Docker部署Yapi接口管理平台(详细得令人发指)
接口测试的工具很多,公司引进了接口管理平台Yapi,自己尝试直接搭建,从安装Nodejs到配置MongoDB数据库,再到安装yapi的时候,遇到浏览器打开本地服务器Ip地址后,没有显示部署内容...没 ...
- Centos下,Docker部署Yapi接口管理平台
前言介绍 Yapi 由 YMFE 开源,旨在为开发.产品.测试人员提供更优雅的接口管理服务,可以帮助开发者轻松创建.发布.维护 API. 项目地址:https://github.com/YMFE/ya ...
- Linux服务部署Yapi项目(安装Node Mongdb Git Nginx等)
Linux服务部署Yapi 一,介绍与需求 1,我的安装环境:CentOS7+Node10.13.0+MongoDB4.0.10. 2,首先安装wget,用于下载node等其他工具 yum insta ...
- Center OS 7 通过Docker部署yapi
Center OS 7 通过Docker部署yapi 版本要求 Linux Center OS 7 安装Docker #Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前 ...
- 跳过 centos部署 webpy的各种坑
用centos部署webpy发现的各种坑: 1.python 版本: 2.中文编码: 3.web模块路径: 在命令行里输入python,能import web,但是网站错误报告一直报告没有找到web模 ...
- 【Linux】Centos部署MySQL
将CentOS部署MySQL需要本地配置环境.本地编译MySQL,耗时较长的情况,优化为编译成型MySQL并打包,推送并按配置部署. 首先需要在一台机器配置好环境,搭个YUM源,并将所需要的包取出备用 ...
- Tigase XMPP Server在CentOS部署和配置
Tigase XMPP Server在CentOS部署与配置 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 以下讲述Tigase XMPP Server ...
随机推荐
- mysql进阶知识
一.存储引擎 引擎 指的是一个系统的核心部分 引擎有不同分类是为了适应不同的使用场景 查看mysql支持所有引擎 show engines; MRG_MYISAM 是一堆MYISAM表的集合 用于做水 ...
- 《JavaScript高级程序设计》笔记:面向对象的程序设计(六)
面向对象的语言有一个标志,那就是它们都有类的概念,而通过类可以创建任意多个具有相同属性和方法的对象. 理解对象 创建自定义对象的最简单的方法就是创建一个Object的实例,然后再为它添加属性和方法.例 ...
- Nginx支持 React browser router
修改nginx配置文件,添加try_file配置如下,即可实现对 React browser router 的支持. location / { root /var/www/mysite; try_fi ...
- 【Android】用Cubism 2制作自己的Live2D——初见!
前言- 现在很多手游的UI上都不约而同的放置一个Live2D模型,这仿佛已经成为了一个业界的潜规则之类的东西.作为一名深受手机游戏毒害的90后,我也没有忘记小时候励志当一名技术宅的梦想,也想试试自己做 ...
- Android为TV端助力 EventBus出现has no public methods called onEvent的问题
Caused by: de.greenrobot.event.EventBusException: Subscriber class com.hhzt.iptv.lvb_w.socket.MyMsgS ...
- centos7后台服务部署jar包
centos7 服务部署jar包 centos7 服务介绍 CentOS7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分, 每一个 ...
- MyDAL - .Where() 之 .WhereSegment 根据条件 动态设置 Select查询条件 使用
索引: 目录索引 一.API 列表 1.WhereSegment 属性,指示 根据条件 动态拼接 where 查询过滤条件 见如下示例. 二.API 单表-完整 方法 举例 // 上下文条件 变量 v ...
- Spark MLlib KMeans 聚类算法
一.简介 KMeans 算法的基本思想是初始随机给定K个簇中心,按照最邻近原则把分类样本点分到各个簇.然后按平均法重新计算各个簇的质心,从而确定新的簇心.一直迭代,直到簇心的移动距离小于某个给定的值. ...
- Rx响应式编程
RX响应式编程就是异步数据流编程:单击事件或事件总线;(观察者模式) 有一堆的函数能够创建流,也能将任何流-,也能将任何流进行组合和过滤.一个流能够作为另一个流的输入,能够将两个流合并,可以通过过滤流 ...
- delphi中WMI的使用(网卡是否接入)
WMI(Windows Management Instrumentation,Windows 管理规范)是一项核心的 Windows 管理技术:用户可以使用 WMI 管理本地和远程计算机. 通过使用W ...