Nginx WebUI管理

简介

NginxWebUI是一款方便实用的nginx 网页配置工具,可以使用 WebUI 配置 Nginx 的各项功能,包括端口转发,反向代理,ssl 证书配置,负载均衡等,最终生成「nginx.conf」配置文件并覆盖目标配置文件,完成 nginx 的功能配置。

他除了nginx的conf可视化配置以外,nginx Web UI还提供以下功能

功能
# 1. 静态网页包可上传并进行统一管理
# 2. ssl证书可在线申请并定时续签. 统一对ssl进行管理及部署
# 3. 集成nginx效验,重载,启动,停止命令,可在网页上对nginx运行状态进行操作
# 4. 可在一台服务器上远程管理其他nginxWebUI服务器,可以在一个网址上修改复数的nginx集群配置,同时提供集群nginx服务运行状态监控功能,使用邮件进行宕机提醒
# 5. 可对nginx中配置的负载均衡节点进行运行状态监控,使用邮件进行宕机提醒.
# 6. 集成nginx日志解析功能,可配置是否生成nginx日志及定时对nginx日志进行解析
# 7. 可反向导入已有的nginx配置文件,可快速克隆已有反向代理配置,可检查反向代理的端口占用
# 8. 提供系统cpu 内存 硬盘运行状态监测
Nginx WebUI功能说明
# 1. 该项目是基于springBoot的web系统,数据库使用sqlite,因此服务器上不需要安装任何数据库。
# 2. 本项目可管理多个nginx服务器集群,随时一键切换到对应服务器上进行nginx配置,也可以一键将某台服务器配置同步到其他服务器,方便集群管理。
# 3. nginx本身功能复杂,本项目并不能涵盖nginx所有功能,只能配置常用功能,更高级的功能配置仍然需要在最终生成的nginx.conf中进行手动编写。
# 4. 部署此项目后,配置nginx再也不用上网各种搜索,再也不用手动申请和配置ssl证书,只需要在本项目中进行增删改查就可方便的配置nginx。
1.8.0发布增加新功能
# 1. 参数配置项添加顺序配置
# 2. 静态文件添加更新功能
# 3. 添加参数模板功能
# 4. 更新docker内的nginx版本为1.18
# 5. 添加立刻解析今日日志 功能
# 6. 替换配置文件时,清除遗留旧配置文件
# 7. 添加conf文件基本导入功能 

jar包部署运行Nginx WebUI

安装java环境
# CentOS7安装Java,有tar包和rpm包,yum三种
        1>. rpm -ivh jdk-8u121-linux-x64.rpm
        2>. tar xvf jdk-8u151-linux-x64.tar.gz -C /usr/local/
cd /usr/local/
mv jdk1.8.0_151/ jdk
tail -3 /etc/profile
JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
下载jar包
# wget http://www.nginxwebui.cn/download/nginxWebUI-1.8.0.jar
启动程序
# nohup java -jar -Xmx64m nginxWebUI-1.8.0.jar --server.port=8080 --project.home=/home/nginxWebUI/ > /dev/null &

# -Xmx64m 最大分配内存数
# --server.port 占用端口,默认以8080端口启动
# --project.home 项目配置文件目录,存放数据库文件,证书文件,日志等,默认为/home/nginxWebUI/
# 注意命令最后加一个&号,表示项目后台运行

Docker运行方式

安装docker
# 安装一些必要的系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加软件源信息
# docker 官方源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

# 阿里云源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  
# 安装前可以先更新 yum 缓存:
sudo yum makecache fast

# CentOS7安装 Docker-ce
yum -y install docker-ce        # CentOS 中安装
apt-get install docker-ce       # Ubuntu 中安装
pacman -S docker                # Arch 中安装
emerge --ask docker             # Gentoo 中安装

# 如果想安装特定版本的Docker-ce版本,先列出repo中可用版本,然后选择安装
yum list docker-ce --showduplicates |sort -r
Loading mirror speeds from cached hostfile
Loaded plugins: fastestmirror
Installed Packages
docker-ce.x86_64            3:19.03.4-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.4-3.el7                    @docker-ce-stable
docker-ce.x86_64            3:19.03.3-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.2-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.1-3.el7                    docker-ce-stable

yum install docker-ce-<VERSION STRING>
# 选择安装 docker-ce-18.06.1.ce
yum install docker-ce-18.06.1.ce

# Docker镜像加速
# 没有启动/etc/docker目录不存在,需要自己创建,docker启动也会自己创建
# 为了期望我们的镜像下载快一点,应该定义一个镜像加速器,加速器在国内
mkdir /etc/docker
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}

# 启动Docker后台服务
systemctl start docker && systemctl enable docker
systemctl daemon-reload                 # 守护进程重启

# 通过运行hello-world镜像,验证是否正确安装了docker,或者通过查看版本
docker run hello-world
docker version
Client: Docker Engine - Community
Version:           19.03.4
API version:       1.40
Go version:        go1.12.10
Git commit:        9013bf583a
Built:            Fri Oct 18 15:52:22 2019
OS/Arch:           linux/amd64
Experimental:      false
下载镜像
docker pull registry.cn-hangzhou.aliyuncs.com/cym1102/nginxwebui:1.8.0
启动容器
docker run -itd -v /home/nginxWebUI:/home/nginxWebUI -e BOOT_OPTIONS="--server.port=8080" --privileged=true --net=host  registry.cn-hangzhou.aliyuncs.com/cym1102/nginxwebui:1.8.0 /bin/bash

使用

初始化用户

http参数配置

在http参数配置中可以配置nginx的http项目,进行http转发,默认会给出几个常用配置,其他需要的配置可自由增删改查。可以勾选开启日志跟踪,生成日志跟踪配置项,每天0点时刻可生成上一天的日志分析报告。由于日志文件access.log文件过大,默认只保留7天的log文件,但分析报告可一直保留。

tcp参数配置

反向代理

在反向代理中可配置nginx的反向代理即server项功能,可开启ssl功能,可以直接从网页上上传pem文件和key文件,或者使用系统内申请的证书,可以直接开启http转跳https功能,也可开启http2协议。

静态网页上传

在html静态文件上传中可直接上传html压缩包到指定路径,上传后可直接在反向代理中使用,省去在Linux中上传html文件的步骤。

证书管理

log管理,在http配置中如果开启了log监控的话,会每天在这里生成日志分析报告

远程服务器管理,如果有多台nginx服务器,可以都部署上nginxWebUI,然后登录其中一台,在远程管理中添加其他服务器的ip和用户名密码,就可以在一台机器上管理所有的nginx服务器了。

提供一键同步功能,可以将某一台服务器的数据配置和证书文件同步到其他服务器中。

相关文章

文章浏览阅读3.7k次,点赞2次,收藏5次。Nginx学习笔记一、N...
文章浏览阅读1.7w次,点赞14次,收藏61次。我们在使用容器的...
文章浏览阅读1.4k次。当用户在访问网站的过程中遇到404错误时...
文章浏览阅读2.7k次。docker 和 docker-compose 部署 nginx+...
文章浏览阅读1.3k次。5:再次启动nginx,可以正常启动,可以...
文章浏览阅读3.1w次,点赞105次,收藏182次。高性能:Nginx ...