【Docker系列】Nginx Proxy Manager
【Docker系列】Nginx Proxy Manager
小码同学前言
我们可以直接使用docker-compose来安装Nginx Proxy Manager,这样更加方便快速,下面我使用NPM名字代替Nginx Proxy Manager。
部署Nginx Proxy Manager
安装
1. 切换到root用户
1 | su root |
2. 创建NPM工作目录
1 | mkdir -p /home/docker/nginx-proxy-manager |
3. 进入工作目录
1 | cd /home/docker/nginx-proxy-manager |
4. 新建docker-compose.yml文件
1 | vim docker-compose.yml |
将以下内容写入到 docker-compose.yml
中
1 | version: '3' |
5. 启动容器
1 | docker-compose up -d |
开放端口
我使用的是Ubuntu系统,Ubuntu系统自带的是UFW服务器,下面我以开发UFW防火墙,如果你是其他防火墙,你可以上网找到其他防火墙开发端口命令。
UFW开放端口
1 | ufw allow 5081 comment "Nginx Proxy Manager" |
服务器安全组开放端口
登录
启动容器docker-compose up -d
后如果没有报错的话,就可以访问NPM的Web页面了
Nginx Proxy Manager的默认账号密码是
1 | Email: admin@example.com |
输入邮箱和密码登录。
设置用户名 & 邮箱
登录第一个页面就是设置用户名和邮箱,根据自己的情况来修改用户名和邮箱。
修改登录密码
第一个输入框是输入当前密码,也就是:changeme
申请SSL证书
首先需要获取DNS的Api Key
具体获取方式可以参考我另一篇文章:获取DNS API Key
添加证书
打开SSL Certificates
,然后点击 Add SSL Certificate
等待成功
申请成功
申请成功后,可以看到有一个SSL证书列表在这里,并且在右边可以看到申请时间。
反向代理服务
什么时候用到反向代理?
我们使用Docker部署服务的时候,一般就使用到了反向代理了。
添加代理服务
进入代理主机服务
开放端口
这里开放端口,只需要开放服务器的防火墙端口,服务器的安全组不需要开放端口,这是因为在使用Nginx Proxy Manager代理Docker服务时,NPM会将流量从指定的端口转发到相应的Docker容器,如果你的服务器的防火墙没有相应端口开放,请求将无法到达docker容器,从而导致反向代理功能无法正常工作。
比如我上面反向代理docker服务的5350端口,那么我就要在服务器开放5350端口,开放这个端口其实倒也不需要太担心安全问题,只要你不在服务器商的安全组开放端口就好了吗,服务器的端口依然不会被外部访问。
1 | ufw allow 5350 comment "this is test port" |
高级配置
自定义配置
如果你需要自定义Nginx配置,你可以在你需要的主机中,打开Advanced自定义配置,比如下面,我做一个简单的location配置。
本文章来源于我的博客:https://blog.hikki.site