版權聲明:本文為博主原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
環境准備
- 操作系統:centos 7
- 環境要求:
- nodejs>7.6
- mongodb>2.6
- git
安裝nodejs
- 獲取資源(部署nodejs盡可能選擇偶數版本,因為偶數版本官方有較長的維護時間,故這次選擇8.x。)
curl -sL https://rpm.nodesource.com/setup_8.x | bash -
- 安裝
yum install -y nodejs
- 查看版本
node -v
- 查看npm版本
npm -v
安裝mongodb
- 更新yum源,非必須但是更新一下無害
yum -y update
- 添加mongodb源文件,在/etc/yum.repos.d 創建一個 mongodb-org.repo 文件
touch /etc/yum.repos.d/mongodb-org.repo
- 編輯mongodb-org.repo文件
vim /etc/yum.repos.d/mongodb-org.repo
- 添加文件內容
[mongodb-org] name=MongoDB Repository baseurl=http://mirrors.aliyun.com/mongodb/yum/redhat/7Server/mongodb-org/3.2/x86_64/ gpgcheck=0 enabled=1
- 安裝mongodb
yum install -y mongodb-org
- 啟動mongodb
service mongod start
- 設置開機啟動
chkconfig mongod on
- 打開moMongoDB(可忽略)
/bin/mongo
- 配置遠程訪問
- 修改mongod.conf配置文件
vim /etc/mongod.conf
- 注釋 bindIp: 127.0.0.1
#bindIp: 127.0.0.1
- 重啟mongod
service mongod restart
安裝git
- 官方推薦,在內網部署的時候安裝git,可以根據自己所需安裝
yum -y install git
搭建YApi環境
搭建YApi
- 准備環境搭建完成后,開始搭建YApi,安裝命令
npm install -g yapi-cli --registry https://registry.npm.taobao.org yapi server
-
實例截圖:
- 執行 yapi server 啟動可視化部署程序,瀏覽器打開提示窗口上的地址,非本地服務器,將0.0.0.0替換指定的域名或IP,進入部署頁面。
-
實例截圖
- 根據項目實際需要可以修改部署信息,點擊【開始部署】,完成部署任務
-
部署成功截圖
4.根據部署日志截圖上的提示信息,啟動服務
啟動服務:node vendors/server/app.js
瀏覽器打開部署日志上的訪問地址http://127.0.0.1:3000就可以訪問搭建的YApi工具了(非本地服務器,將127.0.0.1替換指定的域名或IP),此時YApi本地環境搭建完成
如果是阿里雲ecs服務器,端口需要在安全組里開放,不然訪問不了
5.pm2方式管理進程
要保證后台保持進程,需要安裝pm2。
全局安裝:
npm install -g pm2
啟動:
cd vendors
pm2 start server/app.js --watch
重啟:
pm2 restart service/app.js
停止:
可以先通過pm2 list
獲取應用的名字(--name指定的)或者進程id。
pm2 stop app_name|app_id
pm2使用參考文檔:
http://imweb.io/topic/57c8cbb27f226f687b365636
6.升級
升級項目版本是非常容易的,並且不會影響已有的項目數據,只會同步 vendors 目錄下的源碼文件。
cd {項目目錄} yapi ls //查看版本號列表 yapi update //更新到最新版本 yapi update -v {Version} //更新到指定版本
9.nginx代理
如果您是將服務器代理到 nginx 服務器,請配置 nginx 支持 websocket。
在location /添加 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";
10.禁止注冊
在 config.json 添加 closeRegister:true
配置項,就可以禁止用戶注冊 yapi 平台,修改完成后,請重啟 yapi 服務器。
{ "port": "*****", "closeRegister":true }