在Centos7上部署Yapi
组件版本
CentOS 7
Node v12.22.9
mongoDB v4.4.22
Yapi v1.12.0
一、安装node
node下载地址:https://registry.npmmirror.com/binary.html?path=node/v12.22.9/
下载node压缩包到本地,解压缩文件,移动并重命名node
# 下载压缩包到本地
wget https://registry.npmmirror.com/-/binary/node/v12.22.9/node-v12.22.9-linux-x64.tar.gz
# 解压压缩包
tar -zxvf node-v12.22.9-linux-x64.tar.gz
# 移动node位置并重新命名
mv node-v12.22.9-linux-x64 /usr/local/node
添加node软连接
# 添加node软连接
ln -s /usr/local/node/bin/node /usr/bin/node
ln -s /usr/local/node/bin/npm /usr/bin/npm
# 查看node和npm版本
node -v
npm -v
二、安装mongoDB
mongoDB下载地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.22.tgz
MongoDB官方网站找到community社区版,https://www.mongodb.com/download-center/community
然后选择对应的版本下载,Centos就是Redhat,所以这里选择Redhat。
1.下载node压缩包到本地,解压缩文件,移动并重命名node
# 下载压缩包到本地
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
2.配置mongoDB文件夹和配置文件
2.1 进入mongodb目录 cd /usr/local/mongodb
- 执行
mkdir data
用来存放mongodb的数据库数据 - 执行
mkdir logs
用来存放mongodb运行产生的日志
2.2 创建配置文件
- 进入到 /usr/local/mongodb/bin 下面,执行
vim 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
2.3 将mongoDB的命令,添加到profile中
# 编辑profile文件
vim /etc/profile
# 文件尾部添加一行
export PATH=/usr/local/mongodb/bin:$PATH
# 刷新使修改生效
source /etc/profile
3.启动mongodb
3.1 进入到 /usr/local/mongodb/bin 下面,执行mongod -f mongodb.conf
出现successfully,代表启动成功。
3.2 启动成功后,执行mongo
,进入到mongodb shell
3.3 注册mongodb到系统,实现开机启动
- 在系统服务目录下,新建mongodb的启动服务
cd /lib/systemd/system
vi mongodb.service
- mongodb.service文件内容如下:(路径必须写绝对路径)
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/bin/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
- mongodb.service文件权限改为754
chmod 754 mongodb.service
- 启动mongodb命令
如果命令
systemctl start mongodb.service
启动失败,重启linux,再使用此命令
# 启动
systemctl start mongodb.service
# 关闭
systemctl stop mongodb.service
# 注册到开机启动
systemctl enable mongodb.service
- 在局域网内的其它机器,可能会发现无法连接,通常这都是防火墙的端口没有打开造成的,打开端口命令:
# 查询所有已开放的端口
firewall-cmd --zone=public --list-ports
# 开启端口
firewall-cmd --zone=public --add-port=27017/tcp --permanent
# 查看是否开启
firewall-cmd --permanent --query-port=27017/tcp
# 重启防火墙
firewall-cmd --reload
# 删除已开启的端口
firewall-cmd --zone=public --remove-port=9090/tcp --permanent
- 注意事项:要加上 --permanent 才能保证重启后也能打开
# 重启centos
reboot
三、安装Yapi
1.参考官方部署教程,使用yapi-cli部署
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
2.yapi server 报错找不到yapi时,添加yapi软连接
ln -s /usr/local/node/bin/yapi /usr/bin/yapi
3.使用浏览器登录IP:9090
,开始可视化安装,版本选择1.12.0
4.命令行看到登录邮箱和密码即为部署成功
5.按照指示,切换到部署目录,输入下面命令启动服务器, 然后在浏览器打开IP:3000
node vendors/server/app.js
四、Yapi守护进程(使用pm2)
1.部署Yapi后,这里使用pm2创建守护进程,方法很简单:
# 安装pm2
npm i pm2 -g
2.切换到yapi的vendors目录 执行pm2 start
pm2 start server/app.js --watch
这样就实现了!
五、Yapi守护进程(使用forever)
1.部署Yapi后,这里使用forever创建守护进程
# 安装forever
npm install forever -g
2.切换到yapi的vendors目录 执行forever start
forever start server/app.js --watch
pm2和forever详细方法见另一篇笔记:https://www.cnblogs.com/super-ma/p/17514926.html