大伙儿应该都是将很多应用部署在同一台服务器上。
目前为止,我的NAS也部署了30余个Docker应用,不少都是通过 公网IP+端口 的方式直接进行访问,倒是不麻烦,主要问题是把服务公开在网络上可能会有信息安全风险。
为了规避风险事件,咱们可以使用代理服务器来转发请求并保护每个应用程序的隐私和安全。
Nginx proxy manager同样是是一个非常简单的反向代理工具,部署它并不需要掌握复杂的配置知识,仅需几步即可轻松使用反向代理和设置SSL证书,让我们的访问方式从 IP+端口 变为域名,提高安全性。
Nginx proxy manager更为适合VPS,对NAS用户来说Lucky可能更为合适:https://blog.ydxian.xyz/archives/lucky。
部署
首先在文件总管,创建两个文件夹,用于存储数据,咱们可以自定喜欢的位置,不必一模一样
打开Container Station,按下图顺序创建应用程序
version: '3'
services:
nginx-proxy-manage:
container_name: nginx-proxy-manager
image: jc21/nginx-proxy-manager:latest
ports:
- '8188:80'
- '8189:81'
- '8190:443'
volumes:
- "/share/Container/ngx/data:/data" # 冒号左边可改路径
- "/share/Container/ngx/letsencrypt:/etc/letsencrypt" # 冒号左边可改路径
restart: unless-stopped
Web端输入 NAS_IP:端口
即可进行访问,我这台NAS对应 10.12.21.126:8189
,成功显示登陆界面
默认账户名及密码
Email address :admin@example.com
Password:changeme
第一次登录首先会让我们设置名称邮箱等,点击SAVE
修改密码
可以创建用户,进行权限设置等操作,这些基本没必要管,咱们自用
域名解析
网上教程非常多,每一家服务商其实都大差不差,我这里通过腾讯云购买的域名
填写好IP保存即可
创建反向代理
回到首页,按下图所示顺序点击
添加一个代理服务
填写相关内容
域名:提前解析好,上文已经提到过
服务器地址:若服务与Nginx Proxy Manager在同一台设备,终端输入ip addr show docker0
查看容器内部IP
反之直接填写服务所在宿主机的公网IP
目标应用端口:如下图红框所示,应用的本地访问端口
如下图,点击SSL
,设置完毕后,点击SAVE
就完成反向代理设置,SSL证书会自动续约,咱们后续也不用操心。接下来就可以通过域名访问咱们的服务啦
总结
可以看到整个部署过程以及使用是非常简单的,另外除了提高安全性外,有一些开源服务对于数据安全非常敏感,要求必须反向代理后通过域名才可使用,因此建议没部署的朋友整上一个,通过域名访问服务也是非常舒适滴~
评论区