HELLO NAS BLOG
『NAS』我把 NAS 的所有 Docker 服务都挂到了自己的域名下,外网可访问了
有些品牌的 NAS,在使用 Docker 部署了一些项目后,只能在局域网访问,有些品牌虽然能在外网访问,但官方提供的地址经常变来变去,而且只能自己访问,别人无法直接访问。
点赞 + 关注 + 收藏 = 学会了
💡整理了一个 NAS 专属玩法专栏,感兴趣的工友可以戳这里关注 👉 《NAS邪修》
有些品牌的 NAS,在使用 Docker 部署了一些项目后,只能在局域网访问,有些品牌虽然能在外网访问,但官方提供的地址经常变来变去,而且只能自己访问,别人无法直接访问。
本次以绿联 NAS 为例演示,其他品牌 NAS 的操作步骤基本一致。
跟着做就能让你在 Docker 部署的应用实现“外网穿透”。
开始之前需要准备:
- 一个 Cloudflare 账号(https://dash.cloudflare.com/)
- 一个托管到 Cloudflare 的域名
- 一台支持 Docker 的 NAS(绿联、群晖、威联通均可)
**如果没有域名,想用免费稳定的可以参考这个方法 👉 《免费域名,虽然长得有点丑,但免费!》**
按照这篇文章的方法注册好域名并绑定到 Cloudflare 上。
我有一个域名(https://leihou.dpdns.org)已经免费用了一年多了,非常稳定。

本文用 doai.dpdns.org 这个域名演示。
在浏览器 打开Cloudflare(https://dash.cloudflare.com/),登录后,在左侧面板找到“Zero Trust”,点击它。

进入“Zero Trust”页面后,点击左侧面板的“网络 - 连接器”,然后点击“添加隧道”按钮。

然后选择创建隧道的类型,选择“Cloudflared”,也就是左边那个。

给这个隧道创建一个名字。建议跟着你的域名来创建,比较好记。
然后点击“保存隧道”按钮。

在隧道的配置界面,“选择设备的操作系统”这里选择 Docker,然后下方会给出 docker 相关的命令。
这句命令的 --token 后面跟着的这段很重要,不要泄露出去。
此时的“连接器”还没检测到你的 NAS,可以看到最下方的那个框里提示“未安装连接器”。

Cloudflared 这边先停留在隧道的配置界面,接下来打开绿联 NAS 的「文件管理」应用,找到 docker 文件夹,在其中新建 cloudflared 文件夹。

打开「Docker」应用,切换到 “项目” 面板点击“创建”,按以下信息填写:
- 项目名称:cloudflared
- 存放路径:选择上一步创建的
/docker/cloudflared

Compose配置如下:
services:
cloudflared:
image: cloudflare/cloudflared:latest
container_name: cloudflared
restart: unless-stopped
network_mode: host
command: tunnel --no-autoupdate run --token 将你的token粘贴在这里
上面的这段 Compose 配置,最后的 --token 后面要跟上你在 Cloudflare 隧道配置里的 Token 值。
然后点击“立即部署”。

项目构建成功后,回到浏览器这边,刚刚 Cloudflare 的隧道配置界面,就能看到连接器已经成功检测到了。
点击“下一步”。

接下来配置隧道的路由流量。
-
主机名:
-
子域名:建议输入你在 Docker 里部署的应用名,先填1个,后面可以继续添加的。
-
域:选择你的域名。
-
路径:在本文的这种示例里,不建议填路径。
-
-
服务:
- 类型:根据你在 NAS 里的 Docker 里部署的应用来决定,我的应用在内网访问,通常是选 HTTP 的方式来部署。比如我的「pansou」这个应用在内网访问是
http://192.168.31.202:3306。 - URL:输入你要外网访问的应用的
IP+端口,比如192.168.31.202:3306
- 类型:根据你在 NAS 里的 Docker 里部署的应用来决定,我的应用在内网访问,通常是选 HTTP 的方式来部署。比如我的「pansou」这个应用在内网访问是

我这么配置是有理由的。
一台 NAS 就绑定一个「域名」,NAS 里通过 Docker 部署的多个应用,分别配置不同的「子域名」。
比如我给「pansou」这个应用配置完,在浏览器访问 pansou.doai.dpdns.org 就能访问这个项目。
如果是通过「路径」的方式来配置,那就变成 doai.dpdns.org/pansou ,这样也不是不行,但如果你部署了多个应用,有可能应用和应用之间的路径会冲突。
所以如果多个应用共用一个域名,通过「子域名」的方式来区分的话是较好的选择。
部署完,点击“完成设置”,然后在浏览器访问 https://pansou.doai.dpdns.org/ 就能打开你刚刚关联的应用了。

如果要在同一个域名里添加多个应用可以这么做。
配置的位置:
Cloudflare -> Zero Trust -> 网络 -> 连接器 - 选择隧道名 -> 已发布应用程序路由 -> 添加已发布应用程序路由
选择隧道。

找到“已发布应用程序路由”,点击“添加已发布应用程序路由”。

接下来就是熟悉的界面了,按照前面的步骤添加新应用即可。

如果要删掉域名下已发布的应用,找到对应的应用,在菜单项选择删除即可。

要删除连接器也是很简单,找到要删除的连接器,在菜单里选择“删除”即可。

以上就是本文的全部内容啦,你有好玩的镜像推荐吗?欢迎在评论区留言讨论!
想了解更多NAS玩法记得关注《NAS邪修》👏
往期推荐:
点赞 + 关注 + 收藏 = 学会了
更多 NAS、家庭服务器和工具分享都在博客列表。