1. 程式人生 > >介面文件管理工具YApi內網伺服器搭建過程

介面文件管理工具YApi內網伺服器搭建過程

簡介

YApi 是高效、易用、功能強大的 api 管理平臺,旨在為開發、產品、測試人員提供更優雅的介面管理服務。可以幫助開發者輕鬆建立、釋出、維護 API,YApi 還為使用者提供了優秀的互動體驗,開發人員只需利用平臺提供的介面資料寫入工具以及簡單的點選操作就可以實現介面的管理。
YApi 的一些客戶:
去哪兒,攜程,藝龍,京東,唯品支付,鏈家網,快手,便利蜂
YApi 是去哪兒公司的產品,以上摘自去哪兒YApi官網,下邊是我搭建過程中的記錄:

環境要求

nodejs(7.6+)
mongodb(2.6+)
安裝這2個,YApi官網沒有介紹,需求自己去摸索,我的安裝過程:

安裝nodejs

cd /usr/local/

wget http://nodejs.org/dist/v8.0.0/node-v8.0.0-linux-s390x.tar.gz
tar zxvf node-v8.0.0-linux-s390x.tar.gz

重新命名為node
mv node-v8.1.4-linux-x64 node
配置環境變數
vim /etc/profile
新增:

export NODE_HOME=/usr/local/node  
export PATH=$NODE_HOME/bin:$PATH 

生效:
source /etc/profile

使用命令檢視版本,出現相應版本號則表示成功
node -v
npm -v
**注意:
有的系統需要使用
sudo node -v才能執行**

mongdb安裝

vi /etc/yum.repos.d/mongodb-org-3.2.repo
repo檔案內容如下:

[mongodb-org-3.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.2.asc

安裝所有的mongodb元件:

yum install -y mongodb-org

啟動:
service mongod start
[
[email protected]
vendors]# mongo > use admin #切換到admin資料庫 switched to db admin #建立dba使用者 > db.createUser( ... ... { ... ... user: "dba", ... ... pwd: "dba", ... ... roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] ... ... } ... ... ) #建立yapi資料庫 > use yapi switched to db yapi 給yapi資料庫新增test1使用者,許可權為讀寫 > db.createUser( ... ... { ... ... user: "test1", ... ... pwd: "test1", ... ... roles: [ ... ... { role: "readWrite", db: "yapi" } ... ... ] ... ... } ... ... )

安裝YApi

官網安裝說明:http://yapi.qunar.com/devops.html
[[email protected] local]# pwd
/usr/local
[[email protected] local]# mkdir yapi
[[email protected] local]# cd yapi
[[email protected] yapi]git clone https://github.com/YMFE/yapi.git vendors //或者下載 zip 包解壓到 vendors 目錄
[[email protected] yapi]cp vendors/config_example.json ./config.json //複製完成後請修改相關配置,注意config.json中可以配置埠及mongdb相關的資料庫及賬號密碼,參考上面的安裝mongdb的步驟
[[email protected] yapi]cd vendors
[[email protected] vendors]sudo npm install –production –registry https://registry.npm.taobao.org

[[email protected] vendors]# sudo npm run install-server

[email protected] install-server /usr/local/yapi/vendors
node server/install.js

log: mongodb load success…
初始化管理員賬號成功,賬號名:”[email protected]”,密碼:”ymfe.org”
[[email protected] vendors]# sudo node server/app.js
load websocket…
log: the server is start at port 3000
log: mongodb load success…

啟動方式優化

以上啟動的方式,如果關閉SecureCRT視窗,那麼node的服務就停止了,如何讓node服務在後臺執行呢?
使用pm2 管理 node 伺服器啟動,停止及後臺執行
pm2使用介紹:http://imweb.io/topic/57c8cbb27f226f687b365636

安裝pm2:
linux命令列中執行:

[[email protected] vendors]npm install -g pm2
啟動:
[[email protected] vendors]# pm2 start server/app.js 
[PM2] Starting /usr/local/yapi/vendors/server/app.js in fork_mode (1 instance)
[PM2] Done.
┌──────────┬────┬──────┬───────┬────────┬─────────┬────────┬─────┬───────────┬──────┬──────────┐
│ App nameid │ mode │ pid   │ status │ restart │ uptime │ cpu │ mem       │ user │ watching │
├──────────┼────┼──────┼───────┼────────┼─────────┼────────┼─────┼───────────┼──────┼──────────┤
│ app      │ 0  │ fork │ 24282 │ online │ 00s     │ 1%  │ 12.3 MB   │ root │ disabled │
└──────────┴────┴──────┴───────┴────────┴─────────┴────────┴─────┴───────────┴──────┴──────────┘
 Use `pm2 show <id|name>` to get more details about an app

這樣node就在後臺運行了,即使關閉了SecureCRT視窗,服務還在執行中

異常問題解決

今天出現yapi登陸不了的問題,解決方式如下:

[root@CENTSVR247 yapi]# pwd
/usr/local/yapi
[root@CENTSVR247 yapi]# cd vendors/
[root@CENTSVR247 vendors]# pm2 stop server/app.js
[root@CENTSVR247 vendors]# pm2 start server/app.js

服務好了,可以登陸了,懷疑是不是這臺伺服器上安裝了docker引起的,在上面這些操作之前,把所有docker程序都kill了

幾個有用的命令:

[root@CENTSVR247 vendors]# pm2 list   查詢所有nodejs的程序
#pm2 show <id|name>
[root@CENTSVR247 vendors]# pm2 show app   顯示某個程序的詳細資訊,包括日誌檔案

相關推薦

介面管理工具YApi伺服器搭建過程

簡介 YApi 是高效、易用、功能強大的 api 管理平臺,旨在為開發、產品、測試人員提供更優雅的介面管理服務。可以幫助開發者輕鬆建立、釋出、維護 API,YApi 還為使用者提供了優秀的互動體驗,開發人員只需利用平臺提供的介面資料寫入工具以及簡單的點選操作就

docker部署頂尖 API 管理工具Yapi

前言介紹 Yapi 由 YMFE 開源,旨在為開發、產品、測試人員提供更優雅的介面管理服務,可以幫助開發者輕鬆建立、釋出、維護 API。 專案地址:https://github.com/YMFE/yapi docker pull silsuer/

介面管理,版本管理工具,阿里RAP的windows下部署

相關介紹:http://cn.rapapi.net/org/index.do    1  下載war包 https://raw.githubusercontent.com/thx/RAP/rele

Linux管理工具

Linux基礎Linux的文件管理工具:cp、mv、rm1、cp:copy 源文件:目標文件 單源復制:cp [OPTIONS]...[-T] SOURCE DEST 如果DEST(目標)不存在,則創建並復制數據流到目標文件中; eg:將etc/pass

wordContrl word管理工具

wordContrl 介紹 word文件管理工具,具有建立word文件、編輯word文件、將word文件轉為文字等功能 軟體架構 軟體架構說明 安裝教程 xxxx xxxx xxxx 下載地址:[email protected]:netby

微信小程式開發指南,介面工具下載使用

相信前天,從事網際網路行業人的朋友圈給刷爆了,前微信公眾平臺開始陸續對外發送小程式內測邀請,而小程式即被外界廣為關注的微信“應用號”。 小程式的推出也並非一蹴而就,早在2016年1月的微信公開課上,微信之父張小龍就透露微信即將推出應用號。根據張小龍的描述,應用號的形態大致為

.NET Core使用swagger進行API介面管理

一、問題背景   隨著技術的發展,現在的開發模式已經更多的轉向了前後端分離的模式,在前後端開發的過程中,聯絡的方式也變成了API介面,但是目前專案中對於API的管理很多時候還是通過手工編寫文件,每次的需求變更只要涉及到介面的變更,文件都需要進行額外的維護,如果有哪個小夥伴忘記維護,很多時候就會造

介面管理方案

Restful風格文件管理工具的選擇依據: 團隊協作修改API介面 生成word、pdf、html等形式的介面文件 可以內線搭建自己的API介面文件管理系統 最好能夠內線進行介面的測試工作 文件管理和自動化介面測試方案 方案一、Swagger 方

推薦一個公司內部介面管理方案

我覺得比較適合小公司,尤其適合開發app的小公司。 文件內容用markdown語法寫,然後提交到自己的git伺服器(基於gitolite搭建的)。 然後在伺服器上部署一個java的web應用(就是我要推薦噠,我們就部署在隨便一個tomcat裡了),它用於將md檔案展示成ht

API管理工具折射出的技術視野

所謂技術視野,就是看問題時所能切換的不同角(維)度。 下面就以API管理工具(以下簡稱“管理工具”)為例,來探討背後隱藏的技術視野。 API管理工具 零視角 曾經在一個小型創業公司用到過最簡單的管理工具,就是一個開源的文件管理工具,介面功能類似wiki(維基百科)。 這樣的工具確實能滿足核心需求——API線

伺服器搭建l2tp/ipsec VPN伺服器實現遠端訪問

這裡先對vpn的實現法法做一個介紹: (一)安裝VPN: 1.vpn組成及作用 openswan:提供ipsec服務,設定預共享金鑰  ppp:撥號軟體,提供使用者名稱和密碼用於撥號  xl2tpd:提供l2tp服務 2.安裝前準備(ppp及其他依賴包) yum

docker搭建YApi介面工具

前言:之前使用過RAP2的介面文件工具,這幾天在網上看到YApi這個介面文件工具,UI和體驗很好 1、Docker環境正常(專案

企業盤居然支持高速局域傳輸工具(速度可達20M)

局域網文件傳輸工具高速局域網文件傳輸工具Mobox,局域網內文件共享是公司內非常必須的功能,原本文件共享可以通過:1)windows目錄共享目錄來實現文件交互;2)通過U盤拷貝給對方;3)通過QQ發送給對方;4)通過郵件發送給對方; 高速局域網文件傳輸工具Mobox工作方式介紹: 1、局域網文件傳輸的實現

親自體驗安裝使用AppleDoc(iOS編寫介面工具(網頁版))及 appledoc/Model/GBMethodData.m:44報錯處理

親自體驗安裝使用AppleDoc(iOS編寫介面文件工具(網頁版)) 詳細教程參見的另外一個部落格: http://www.jianshu.com/p/ef5e2bae6894 補充:當你cd 把工程拖入終端後,執行上面的命令後,出現: **

新疆汽車維修app介面

目錄 app介面文件 訂單項介面呼叫 獲取預約訂單的介面 URL {{url}}/api/wxxt/order/order 開發地址: {{url}}/api/wxxt/appointment 支援格式 JSON HT

開發前期必須準備的利器:開發原型圖、UI圖工具pxCook、找圖示、寫介面、程式碼託管等...

開發前期必準備的效率工具: 開發原型圖:Auxure https://www.axure.com.cn/axure/course/ ui圖量尺寸、標註尺寸 Pxcook’ http://www.fancynode.com.cn/pxcook 找圖示 inconfont

django官方——管理器(資料庫操作介面

控制自動管理器型別¶ 本文已經談了許多 Django 為你建立的管理器類:`預設管理器`_ 和用於 操作關聯物件 的“簡明”管理器。但是 Django 的執行還需要一些其它的簡明管理器。這些自動建立的管理器是 django.db.models.Manager 的例項。 本節我們會使用“自動管理器”來指代

swagger-ui教程 構建api介面工具

1.在我第一次開發app後端的時候,使用的word文件,就是我先將所有資料格式定義好,會返回什麼樣的資料寫好。前端人員照這個來進行開發。貼一張圖吧: PS:存在的問題:①介面改動時,不易被識別。②維護困難,不便於查詢。③前端開發不能進行測試。(如果還要寫

介面測試相關管理規範

  3.1    測試文件範圍 介面自動化測試主要需要管理的文件型別如下: 介面說明文件、測試用例文件、測試報告(結果)文件、測試指令碼(jmx型別)、會議紀要、評審文件等測試相關文件。 3.2    測試文件建立說明 需求類的文件(如:介面說明文件)在測試初期由開發提供給

apidoc介面自動生成工具

使用背景 : 由於後端介面開發好,提供介面文件供前端人員呼叫;由於某種原因,修改了介面,文件沒有及時更新,導致後續交接或聯調時介面文件不匹配;使用apidoc文件自動生成工具,解決這一問題。 方案介紹 : apidoc是基於node語言寫的介面文件生成工具。