您好,登錄后才能下訂單哦!
Nginx 中怎么使用NginxWebUI實現可視化,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
一、Jar安裝說明
1、安裝Java運行環境和Nginx
以Ubuntu操作系統為例。
注意:本項目需要在root用戶下運行系統命令,極容易被黑客利用,請一定修改密碼為復雜密碼。
Ubuntu:
apt install openjdk-11-jdk apt install nginx
Centos:
yum install java-11-openjdk yum install nginx
2、下載最新版發行包Jar。
wget -O /home/nginxWebUI/nginxWebUI.jar http://file.nginxwebui.cn/nginxWebUI-2.5.4.jar
有新版本只需要修改路徑中的版本即可。
3、啟動項目。
nohup java -jar -Xmx64m /home/nginxWebUI/nginxWebUI.jar --server.port=8080 --project.home=/home/nginxWebUI/ > /dev/null &
-Xmx64m 最大分配內存數。
--server.port 占用端口, 默認以8080端口啟動。
--project.home 項目配置文件目錄,存放數據庫文件,證書文件,日志等, 默認為/home/nginxWebUI/。
--spring.database.type=mysql 使用其他數據庫,不填為使用本地sqlite,選項包括mysql和postgresql。
--spring.datasource.url=jdbc:mysql://ip:port/nginxwebui 數據庫url。
--spring.datasource.username=root 數據庫用戶。
--spring.datasource.password=pass 數據庫密碼。
注意命令最后加一個&號, 表示項目后臺運行。
二、Docker安裝說明
本項目制作了Docker鏡像,同時包含Nginx和NginxWebUI在內,一體化管理與運行Nginx。
1、安裝Docker容器環境。
Ubuntu:
apt install docker.io
Centos:
yum install docker
2、拉取鏡像:
docker pull cym1102/nginxwebui:latest
3、啟動容器:
docker run -itd -v /home/nginxWebUI:/home/nginxWebUI -e BOOT_OPTIONS="--server.port=8080" --privileged=true --net=host cym1102/nginxwebui:latest /bin/bash
注意:
啟動容器時請使用--net=host參數,直接映射本機端口,因為內部Nginx可能使用任意一個端口,所以必須映射本機所有端口。
容器需要映射路徑/home/nginxWebUI:/home/nginxWebUI,此路徑下存放項目所有數據文件,包括數據庫,Nginx配置文件,日志,證書等,升級鏡像時,此目錄可保證項目數據不丟失。請注意備份。
-e BOOT_OPTIONS 參數可填充Java啟動參數, 可以靠此項參數修改端口號。--server.port 占用端口, 不填默認以8080端口啟動。
日志默認存放在/home/nginxWebUI/log/nginxWebUI.log。
使用docker-compose時配置文件如下:
version: "3.2" services: nginxWebUi-server: image: cym1102/nginxwebui:2.5.4 volumes: - type: bind source: "/home/nginxWebUI" target: "/home/nginxWebUI" environment: BOOT_OPTIONS: "--server.port=8080" privileged: true network_mode: "host"
三、添加開機啟動
編輯service配置。
vim /etc/systemd/system/nginxwebui.service
[Unit] Description=NginxWebUI After=syslog.target After=network.target [Service] Type=simple User=root Group=root WorkingDirectory=/home/nginxWebUI ExecStart=/usr/bin/java -jar /home/nginxWebUI/nginxWebUI.jar Restart=always [Install] WantedBy=multi-user.target
之后執行。
systemctl daemon-reload systemctl enable nginxwebui.service systemctl start nginxwebui.service
四、使用說明
打開 http://xxx.xxx.xxx.xxx:8080 進入主頁。
登錄頁面,第一次打開會要求初始化管理員賬號。
進入系統后,可在管理員管理里面添加修改管理員賬號。
在Http參數配置中可以配置Nginx的Http項目,進行Http轉發,默認會給出幾個常用配置,其他需要的配置可自由增刪改查。可以勾選開啟日志跟蹤,生成日志跟蹤配置項,每天0點時刻可生成上一天的日志分析報告。由于日志文件access.log文件過大,默認只保留7天的log文件,但分析報告可一直保留。
Stream項目參數,大多數情況下可不配。
在反向代理中可配置Nginx的反向代理即Server項功,可開啟SSL功能,可以直接從網頁上上傳Pem文件和Key文件,或者使用系統內申請的證書,可以直接開啟Http轉跳Https功能,也可開啟Http2協議。
在負載均衡中可配置Nginx的負載均衡即Upstream項功能,在反向代理管理中可選擇代理目標為配置好的負載均衡。
在Html靜態文件上傳中可直接上傳Html壓縮包到指定路徑,上傳后可直接在反向代理中使用,省去在Linux中上傳Html文件的步驟。
在證書管理中可添加證書,并進行簽發和續簽,開啟定時續簽后,系統會自動續簽即將過期的證書,注意:證書的簽發是用的acme.sh的dns模式,需要配合阿里云的aliKey和aliSecret來使用。請先申請好aliKey和aliSecret。
最終生成conf文件,可在此進行進一步手動修改,確認修改無誤后,可覆蓋本機conf文件,并進行效驗和重啟,可以選擇生成單一nginx.conf文件還是按域名將各個配置文件分開放在conf.d下。
Log管理。在Http配置中如果開啟了Log監控的話,會每天在這里生成日志分析報告。
遠程服務器管理,如果有多臺Nginx服務器,可以都部署上NginxWebUI,然后登錄其中一臺,在遠程管理中添加其他服務器的IP和用戶名密碼,就可以在一臺機器上管理所有的Nginx服務器了。
提供一鍵同步功能, 可以將某一臺服務器的數據配置和證書文件同步到其他服務器中。
五、接口開發
本系統提供Http接口調用,只要打開 http://xxx.xxx.xxx.xxx:8080/doc.html 即可查看knife4j接口頁面。
接口調用需要在header中添加token,其中token的獲取需要在管理員管理中,打開用戶的接口調用權限,然后通過用戶名密碼調用獲取token接口,才能得到token,然后在knife4j的文檔管理中設置全局token。
注意:參數說明中,帶 * 前綴的均是必填項。
如要屏蔽knife4j界面展示,只要在啟動參數添加 --knife4j.production=true 即可屏蔽。
六、找回密碼
如果忘記了登錄密碼,可按如下教程找回密碼。
1、安裝sqlite3命令。
apt install sqlite3
2、讀取sqlite.db文件。
sqlite3 /home/nginxWebUI/sqlite.db
3、查找admin表。
select * from admin;
4、退出sqlite3。
.quit
關于Nginx 中怎么使用NginxWebUI實現可視化問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。