1 环境依赖安装
环境要求
nodejs(7.6+) (本文安装12.18.3)
mongodb(2.6+)(本文安装5.0.17)
1.1 安装Nodejs
1.1.1 下载安装包
下载地址:https://nodejs.org/zh-cn/download/
这里下载linux版本:node-v12.18.3-linux-x64.tar.gz
(注意,这里node的版本不能太高,比如尝试安装18.16.0,发现最后yapi启动报错,网上也有安装14.x的版本也有类似的问题)
1.1.2 上传到服务器并解压安装包
将 node-v12.18.3-linux-x64.tar.gz 上传部署服务器的某目录(这里使用/opt)后,进行解压:
tar -xzvf node-v12.18.3-linux-x64.tar.gz
1.1.3 验证
切换到 安装bin目录下
cd 你安装的node目录/bin
查看node版本
./node -v
查看npm版本
./npm -v
在查看npm版本时,可能会提示以下错误:
/usr/bin/env: ‘node’: No such file or directory
原因:
npm执行的时候默认是使用/usr/bin/node去执行,本地应该是没有/usr/bin/node,可以创建一个软连接将自己的node的执行文件指到/usr/bin/node上:
ln -s 你的node部署目录/bin/node /usr/bin/node
也可以将node的安装目录下的bin添加到系统 环境变量path中,在/etc/profile配置文件中可以添加以下两句(需根据实际部署的路径 进行调整)
export NODE_HOME=/opt/node-v12.18.3-linux-x64
export PATH=$PATH:${NODE_HOME}/bin
1.2 安装Mongodb
1.2.1 下载安装包
下载地址:
www.mongodb.com
选择 Products > Community Edition 进入社区版,下载 Linux 版对应的安装包
这里注意,6.0之后的版本改动有点大,yapi并未友好支持,需选择5.0或之前的版本。(主要是6.0之后,mongodb部署包不包含mongo客户端)
这里下载了以上linux的版本安装包:
mongodb-linux-x86_64-rhel80-5.0.17.tgz
1.2.2 安装
上传安装包至服务器并解压(这里上传至/opt目录下)
tar xzvf mongodb-linux-x86_64-rhel80-5.0.17.tgz
修改解压后的文件夹名
mv mongodb-linux-x86_64-rhel80-5.0.17 mongodb-5.0.17
进入mongodb-5.0.17目录,创建与 bin 目录同级的 data\db 、log 和 conf 目录用于存放数据和日志
# 创建 data\db 文件夹存放数据
mkdir -p data/db
# 创建 log 文件夹存放日志
mkdir log
# 创建 conf 文件夹存放配置文件
mkdir conf
在 log 目录下创建 mongodb.log 存放日志,
# 进入 log 目录
cd log
# 创建 mongodb.log 文件
touch mongodb.log
在 conf 目录下创建 mongodb.conf 文件并添加以下配置信息:
systemLog:
# MongoDB发送所有日志输出的目标指定为文件
# The path of the log file to which mongod or mongos should send all diagnostic logging information
destination: file
# mongod或mongos应向其发送所有诊断日志记录信息的日志文件的路径
path: "/opt/mongodb-5.0.17/log/mongod.log"
# 当mongos或mongod实例重新启动时,mongos或mongod会将新条目附加到现有日志文件的末尾。
logAppend: true
storage:
# mongod实例存储其数据的目录。storage.dbPath设置仅适用于mongod。
# The directory where the mongod instance stores its data.Default Value is "/data/db".
dbPath: "/opt/mongodb-5.0.17/data/db"
journal:
#启用或禁用持久性日志以确保数据文件保持有效和可恢复。
enabled: true
processManagement:
#启用在后台运行mongos或mongod进程的守护进程模式。
fork: true
net:
# 服务实例绑定的IP,默认是localhost(192.168.222.129:局域网IP)
bindIp: localhost,192.168.222.129
# bindIp
#绑定的端口,默认是27017
port: 27017
1.2.3 启动
进入到 bin 目录下 启动 MongoDB
以配置文件的形式启动
mongod -f ../conf/mongodb.conf
1.2.4 停止并关闭mongod服务
将mongodb的安装目录配置到/etc/profile中,以便可以随处执行mongo命令
export MONGO_HOME=/opt/mongodb-5.0.17
export PATH=$PATH:${MONGO_HOME}/bin
修改完配置后,执行source /etc/profile ,以便配置可以生效。
方式1:正常关闭:
# 客户端登录服务,注意,这里通过localhost登录,如果需要远程登录,必须先登录认证才行。
mongo --port 27017# 关闭服务
db.shutdownServer()
方式二:快速关闭:
#通过进程编号关闭节点
kill -2 pid
1.2.5 客户端连接
在部署机器上,输入 mongo 命令便可以连接上
2 安装Yapi
http://ued.qunar.com/yapi/devops/index.html
官方提供了两种部署方式,一种是可视化部署,另一种则是命令行git clone源码来部署,这里采用可视化部署。
npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server
说明:执行 yapi server 启动可视化部署程序,输入相应的配置和点击开始部署,就能完成整个网站的部署。部署完成之后,可按照提示信息,执行 node {网站路径/server/app.js} 启动服务器。在浏览器打开指定url, 点击登录输入您刚才设置的管理员邮箱,默认密码(ymfe.org) 登录系统(默认密码可在个人中心修改)。
安装成功后会收到下面提示:
初始化管理员账号成功,账号名:"admin@admin.com",密码:"ymfe.org"
部署成功,请切换到部署目录,输入: "node vendors/server/app.js" 指令启动服务器,
然后在浏览器打开 http://127.0.0.1:3000 访问
通过浏览器打开:http://ip:9090进入安装界面
后台永久运行
上面直接node启动,是在控制台上运行,关闭控制台服务将自动退出,如想要服务在后台运行,可以安装forever实现后台运行
# 安装forever
npm install forever -g
# 在yapi安装目录下/opt/my-yapi/vendors/server目录下启动应用
forever start app.js
# 关闭应用
forever stop app.js
# 重启所有应用
forever restartall