從零開始部署 Yapi(Windows+Nginx)


一、環境准備及安裝

本文中是以本地 Windows 作為安裝環境,Nginx 做反向代理,親測驗證可用。
Yapi 運行需要的環境:
Nodejs,MongoDB
安裝包都在文檔末尾處

1.1 安裝 node-v12.16.1

為啥偏偏是 V12.16.1 版本?因為親測 Nodejs 安裝太高的版本會導致 Yapi 可視化安裝時出現奇怪的錯誤,經過幾次測試,便使用了該版本的 nodejs 及 V4.2.12 版本的 MongoDB。
安裝過程很簡單,一直 next 使用默認配置

安裝nodejs

驗證是否安裝成功,cmd 使用【node -v】命令即可

1.2 安裝 MongoDB

Yapi 的數據存儲使用的 MongoDB,例如一些賬戶信息,之后也方便二開

1.2.1 安裝包

圖一 圖一

雙擊.msi 文件,選擇 Custom 自定義安裝。
溫馨提示:准備好一個文本文檔記錄下安裝的目錄,稍后將會用到,這里我將路徑修改在了 D:\MongoDb

"install mongoDB compass"不勾選(當然你也可以選擇安裝它,大概需要 5-8 分鍾安裝時間),MongoDB Compass 是一個圖形界面管理工具,我們可以在后面自己到官網下載安裝.
下載地址:https://www.mongodb.com/download-center/compass。
在安裝好之后,D:\MongoDb目錄如下圖所示

1.2.2 驗證安裝

進入 bin 目錄雙擊 mongo.exe 即可
連接 Mogodb 之后可以使用簡單的算術運算,輸入 db 即可查看當前操作的文檔,即數據庫

二、Yapi 可視化安裝

2.1 安裝 Yapi

進入此步驟就已經成功大半了,因為 Yapi 官方提供了兩種方式部署,其中可視化安裝,使得它的安裝非常簡單人性化
先上官網地址:Yapi 官方手冊

npm install -g yapi-cli --registry https://registry.npm.taobao.org
yapi server

在 cmd 命令行中分別輸入以上命令行,則 yapi 可視化部署就已經在當前宿主機上了,在本地部署則輸入 127.0.0.1:9090,進入可視化部署界面,就像一個軟件安裝頁面一樣.


此時在可視化部署之前,可以進行 Yapi 的預設配置,經過測試用該文檔的 nodejs 和 MongoDB 版本安裝 1.9.2 版本是沒有問題的,編寫此文檔時,Yapi 剛更新了 1.10.1 版本,暫時未測試。
此外還需要注意 Yapi 部署的路徑、網站端口號及數據庫端口號。

2.2 可視化部署


Yapi 部署過程中,會初始化數據庫及 UI,一般安裝過程在 5 分鍾之內,如若報錯也會在該控制台輸出,一般手動百度一下就能解決。


此時提示部署成功則安裝成功,記錄初始化管理員賬號密碼,切換到部署目錄,輸入 nodejs 命令去啟動服務器。
這里的部署目錄就是 2.1 步驟中我們部署的路徑,瀏覽器的端口則為我們設置的網站端口

2.3 運行 Yapi.

在窗口啟動 yapi 之后,進入http://127.0.0.1:3000,登錄輸入在可視化部署頁面初始化的管理員賬號密碼,進入首頁,至此Yapi的安裝就此完成

三、Yapi 使用 Nginx 部署

3.1 Nginx 環境准備及安裝

安裝 Nginx
官網下載地址http://nginx.org/en/download.html 下載解壓之后的目錄如下


兩種啟動方式:

  1. 雙擊 nginx.exe,雙擊之后會一個黑框一閃而過,不建議使用,錯誤看不到日志。
  2. Cmd 命令窗口下使用 nginx.exe 或者 start nginx 命令啟動

3.2 Nginx 常用命令

nginx -s reload            # 重新載入配置文件
start nginx               # 啟動Nginx
nginx -s reopen           # 重啟 Nginx
nginx -s stop             # 快速停止 Nginx
nginx -s quit             # 完整有序的停止nginx

3.3Nginx 配置

網上的關於 Nginx 配置的文檔很多,這里不重復講解解釋,推薦幾個網址:
Nginx 的安裝及使用


至此 Yapi 的部署就到此結束了,后續再啟動 Yapi 只需要執行 2.2 節運行 Yapi 以及 3.1 節中啟動 Nginx 即可。

80 端口占用錯誤處理方法

錯誤:nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)
解決方案

查看 80 端口占用情況

netstat -aon | findstr :80

查看服務名稱

tasklist|findstr "4"

本文使用的是方式三解決的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM