今天给大家介绍一款 Nginx 可视化管理界面,非常好用,小白也能立马上手。
nginx-proxy-manager 是一个反向代理管理系统,它基于 NGINX,具有漂亮干净的 Web UI。还可以获得受信任的 SSL 证书,并通过单独的配置、自定义和入侵保护来管理多个代理。它是开源的,斩获 11.8K 的 Star 数。
version:
'3'
services:
app:
image:
'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
-
'80:80'
-
'81:81'
-
'443:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
docker-compose up -d
#如果使用的是 docker-compose-plugin
docker compose up -d
运行成功后,访问 就能看到界面啦

网站默认账号和密码为
账号:admin@example.com
密码:changeme
登录成功后第一次要求修改密码,按照步骤修改即可!

这里,我们就用 来绑定我们的端口号为81的后台管理界面,实现浏览器输入 即可访问后台管理界面,并且设置HTTPS。
先用ip:81 访问后台管理界面,然后输入账号密码进入后台。
点击绿色图标的选项

点击右边Add Proxy Host ,在弹出的界面Details选项中填写相应的字段。

Forward Hostname / IP填写说明
如果搭建的服务和nginx proxy manager服务所在不是一个服务器,则填写能访问对应服务的IP。如果都在同一台服务器上,则填写在服务器中输入ip addr show docker0 命令获取得到的ip。

这里不填127.0.0.1的原因是使用的是docker容器搭建web应用,docker容器和宿主机即服务器不在同一个网络下,所以127.0.0.1并不能访问到宿主机,而ip addr show docker0获得的ip地址就是宿主机地址。
接下来即可用a.test.com 访问后台管理界面,此时还只是http协议,没有https。不过此时就可以把之前的81端口关闭了,输入a.test.com 访问的是服务器80端口,然后在转发给内部的81端口。
申请一个a.test.com 证书,这样就可以提供https访问了。
在Nginx Proxy Manager管理后台,选择Access Lists->Add SSL Certificate->Let's Encrypt选项。

按照下图方式填写,点击Save就可以了

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

链接:https://mp.weixin.qq.com/s/n981QudKz_pO-7RuoVJ3wA
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70013542/viewspace-2943688/ ,如需转载,请注明出处,否则将追究法律责任。