Nginx-Proxy-Manager可以说是 Web UI版的Nginx,还集成了很多其它运维功能,相当好用!

众所周知,浪费时间等于谋财害命,Web UI大幅度提高增删查改的效率👍(当然不是说敲命令不方便,根据个人喜好即可)

安装

1、安装 Docker 和 Docker-Compose

这里不赘述

2、创建一个docker-compose.yml文件

这里使用Linux运维面板1panel进行安装,1panel可以灵活且高效的对Docker应用进行安装和管理

networks:
    1panel-network:
        external: true
services:
    nginx-proxy-manager:
        container_name: ${CONTAINER_NAME}
        deploy:
            resources:
                limits:
                    cpus: ${CPUS}
                    memory: ${MEMORY_LIMIT}
        image: chishin/nginx-proxy-manager-zh:latest
        labels:
            createdBy: Apps
        networks:
            - 1panel-network
        ports:
            - ${HOST_IP}:${PANEL_APP_PORT_HTTP1}:80
            - ${HOST_IP}:${PANEL_APP_PORT_HTTP}:81
            - ${HOST_IP}:${PANEL_APP_PORT_HTTP2}:443
        restart: always
        volumes:
            - ./data/data:/data
            - ./data/ssl:/etc/letsencrypt

3、运行

docker-compose up -d
  • #如果使用的是 docker-compose-plugin

  • docker compose up -d

4、访问网页

运行成功后,访问 http://{部署该应用的服务器的IP}:81,即可访问Web UI管理界面。

上文docker-compose.yml使用的镜像image: chishin/nginx-proxy-manager-zh:latest是中文版本的,只替换了前端的文本,功能与原版一样,若想体验原汁原味的Nginx-Proxy-Manager请使用原版镜像jc21/nginx-proxy-manager:latest

5、登录

官方文档里备注了网站默认账号和密码为

账号:admin@example.com

密码:changeme

登录成功后第一次要求修改密码,按照步骤修改即可!

6、登录成功主界面

应用场景1:设置后台管理界面的反向代理

用提前注册的域名 persist1.cn 的二级域名 www.persist1.cn 与端口号 81 绑定,实现浏览器输入 http://www.persist1.cn:81 即可访问后台管理界面,并且设置HTTPS。

1、事前准备

  • 安装好Nginx Proxy Manager

  • 拥有一个域名

  • 将 http://www.persist1.cn 解析到安装Nginx Proxy Manager的服务器ip地址上

2、反向代理操作

先用 ip:81 访问后台管理界面,然后输入账号密码进入后台。

点击绿色图标的选项

点击右边 新建代理服务(Add Proxy Host) ,在弹出的界面 详细内容(Details)选项中填写相应的字段。

  • 域名(Domain Names): 填写要反向代理的域名,这里就是http://www.persist1.cn

  • 目标IP(Forward Hostname / IP): 你后端服务的服务器的 IP地址

  • 反向代理的端口(Forward Port): 你后端服务的服务器的 端口

  • 开启后阻止一些常见漏洞(Block Common Exploits):正常来说你就一直开着吧...

3、申请ssl证书

申请一个 *.persist1.cn 证书,这样就可以提供https访问了,后续使用其二级域名部署服务时如果需要开启tls验证,也可以继续用这个泛域名证书,不用重复申请,一证多用👍。

在Nginx Proxy Manager管理后台,选择 ssl证书(Access Lists)->添加ssl证书(Add SSL Certificate)->Let's Encrypt(他家提供免费ssl证书,其它需求请忽略这项)选项。

按照下图方式填写,点击保存(Save)就可以了。

4、设置HTTPS

进入反向代理设置界面,编辑上文创建的反代服务,选择SSL选项,下拉菜单中选择我们申请的证书,然后可以勾选 强制ssl(Force SSL)即强制HTTPS。

不建议开启HSTS,这个是一种缓存策略...有时候会出热更新相关的bug。

下图不是Nginx-Proxy-Manager的Web UI的反代,是我的博客(咱们正在看这个贴子的站😺)的反代。

嘻嘻~