之前民工哥也給大家介紹過一款Nginx配置生成器:強大!Nginx 配置線上一鍵生成“神器”,不太瞭解的人可以去看一看。 最近民工哥又發現一款好用的網頁版開源工具,同樣它的功能也是Nginx配置生成器,功能非常強大,方便實用,它是:NginxWebUI。 NginxWebUI介紹 NginxWebU ...
之前民工哥也給大家介紹過一款Nginx配置生成器:強大!Nginx 配置線上一鍵生成“神器”,不太瞭解的人可以去看一看。
最近民工哥又發現一款好用的網頁版開源工具,同樣它的功能也是Nginx配置生成器,功能非常強大,方便實用,它是:NginxWebUI。
NginxWebUI介紹
NginxWebUI是一款方便實用的nginx 網頁配置工具,可以使用 WebUI 配置 Nginx 的各項功能,包括埠轉發,反向代理,ssl 證書配置,負載均衡等,最終生成「nginx.conf」配置文件並覆蓋目標配置文件,完成 nginx 的功能配置。
項目地址:https://gitee.com/cym1102/nginxWebUI
官方網站:https://nginxwebui.gitee.io
NginxWebUI功能說明
-
該項目是基於springBoot的web系統,資料庫使用sqlite,因此伺服器上不需要安裝任何資料庫。
-
本項目可管理多個nginx伺服器集群, 隨時一鍵切換到對應伺服器上進行nginx配置, 也可以一鍵將某台伺服器配置同步到其他伺服器, 方便集群管理。
-
nginx本身功能複雜, 本項目並不能涵蓋nginx所有功能, 只能配置常用功能, 更高級的功能配置仍然需要在最終生成的nginx.conf中進行手動編寫。
-
部署此項目後, 配置nginx再也不用上網各種搜索, 再也不用手動申請和配置ssl證書, 只需要在本項目中進行增刪改查就可方便的配置nginx。
NginxWebUI安裝
它有兩種安裝方式:
-
一種是jar包運行方式
-
一種是 Docker運行方式
1、jar包運行方式
首先需要安裝JDK和Nginx環境,這裡不再贅述了,有興趣的可以看看前面的文章。
下載jar包
wget https://craccd.oss-cn-beijing.aliyuncs.com/nginxWebUI-1.3.5.jar
啟動程式
nohup java -jar -Xmx64m nginxWebUI-1.3.5.jar --server.port=8080 ----project.home=/home/nginxWebUI/ &
啟動參數說明:
-
-Xmx64m 最大分配記憶體數
-
--server.port 占用埠, 預設以8080埠啟動
-
--project.home 項目配置文件目錄,存放資料庫文件,證書文件,日誌等, 預設為/home/nginxWebUI/
註意命令最後加一個&號, 表示項目後臺運行
2、Docker運行方式
本項目製作了docker鏡像, 同時包含nginx和nginxWebUI在內, 一體化管理與運行nginx.
首先安裝docker運行環境,之前公眾號有文章介紹,可以去搜索查閱一下。
下載整體鏡像文件:
docker pull registry.cn-hangzhou.aliyuncs.com/cym1102/nginxwebui:1.3.5
啟動容器:
docker run -itd -v /home/nginxWebUI:/home/nginxWebUI -e BOOT_OPTIONS="--變數名=變數值 --變數名2=變數值2" --privileged=true --net=host registry.cn-hangzhou.aliyuncs.com/cym1102/nginxwebui:1.3.5 /bin/bash
參數說明:
-
啟動容器時請使用--net=host參數, 直接映射本機埠, 因為內部nginx可能使用任意一個埠, 所以必須映射本機所有埠.
-
容器需要映射路徑/home/nginxWebUI:/home/nginxWebUI, 此路徑下存放項目所有數據文件, 包括資料庫, nginx配置文件, 日誌, 證書等, 升級鏡像時, 此目錄可保證項目數據不丟失. 請註意備份.
-
-e BOOT_OPTIONS 參數可填充java啟動參數, jar安裝教程中的參數均可使用, 可以靠此項參數修改埠號等
-
日誌預設存放在/home/nginxWebUI/log/nginxWebUI.log
安裝完成,啟動之後,就要以通過WEB網頁來訪問這個項目了。
NginxWebUI使用演示
在瀏覽器直接輸入地址:http://serve_ip:8080/訪問
第一次登錄,需要初始化用戶,輸入你的用戶與密碼,點擊添加即可。
登錄完成之後的界面如下:
在http參數配置中可以配置nginx的http項目,進行http轉發, 預設會給出幾個常用配置, 其他需要的配置可自由增刪改查。可以勾選開啟日誌跟蹤, 生成日誌跟蹤配置項, 每天0點時刻可生成上一天的日誌分析報告。由於日誌文件access.log文件過大, 預設只保留7天的log文件, 但分析報告可一直保留。
在TCP參數配置中可以配置nginx的steam項目參數, 進行tcp轉發。
在反向代理中可配置nginx的反向代理即server項功能, 可開啟ssl功能, 可以直接從網頁上上傳pem文件和key文件, 或者使用系統內申請的證書, 可以直接開啟http轉跳https功能,也可開啟http2協議。
在負載均衡中可配置nginx的負載均衡即upstream項功能, 在反向代理管理中可選擇代理目標為配置好的負載均衡。
在html靜態文件上傳中可直接上傳html壓縮包到指定路徑,上傳後可直接在反向代理中使用,省去在Linux中上傳html文件的步驟。
在證書管理中可添加證書, 併進行簽發和續簽, 開啟定時續簽後, 系統會自動續簽即將過期的證書。
最終生成conf文件,可在此進行進一步手動修改,確認修改無誤後,可覆蓋本機conf文件,併進行效驗和重啟, 可以選擇生成單一nginx.conf文件還是按功能變數名稱將各個配置文件分開放在conf.d下。
備份文件管理, 這裡可以看到nginx.cnf的備份歷史版本, nginx出現錯誤時可以選擇回滾到某一個歷史版本。
log管理, 在http配置中如果開啟了log監控的話, 會每天在這裡生成日誌分析報告。
遠程伺服器管理, 如果有多台nginx伺服器, 可以都部署上nginxWebUI, 然後登錄其中一臺, 在遠程管理中添加其他伺服器的ip和用戶名密碼, 就可以在一臺機器上管理所有的nginx伺服器了。
提供一鍵同步功能, 可以將某一臺伺服器的數據配置和證書文件同步到其他伺服器中。
整個的配置過程的使用步驟就是這樣。
從整體試用的過程中看來,還真的是一個非常強大的開源工具,而且非常實用,好用到爆!!!這裡也牆裂推薦給大家,讓大家告別複雜的配置過程,提高工作效率,為開源作者點贊!!
看到這裡,如本文對你有所幫助,不要忘記點個在看與轉發分享出去!!