type
status
date
slug
summary
tags
category
icon
password

📝 前期准备

一、域名

域名是一切的基础,腾讯云、阿里云、华为云等云服务商随便选一家都可以。选择一级域名时注意下续费价格就好,有些域名首年几块钱,第二年续费可就要你命了。。

二、cloudflare Tunnel(可选)

Cloudflare Tunnel是Cloudflare Zero Trust中的一个产品,它能够帮助用户将位于内网中的服务暴露到公网上,从而使得外部用户可以通过互联网访问这些服务。 相比较于frp、ngrok等内网穿透工具,使用Cloudflare Tunnel可以获得更好的安全性和性能。

1.注册cloudflare

在使用前,需要先注册一个Cloudflare账号,然后根据提示添加站点,将域名添加到Cloudflare的DNS服务中,再开通Cloudflare Zero Trust服务,选择免费套餐就可以了。

2.获取 API-Token

为了允许 Traefik 使用 Cloudflare 帐户来验证域是否是您的,需要提供Cloudflare API 令牌。这样 Traefik 就可以自动为你的域名获得 SSL 证书。
  1. 访问Cloudflare,转到我的个人资料,选择 API令牌,然后选择创建令牌
  1. 使用模板 编辑区域 DNS。
  1. 更改为以下设置,单击继续以显示摘要,然后单击创建令牌
  • 权限:区域 - DNS - 编辑
  • 权限:区域 - 区域设置 - 读取
  • 权限:区域 - 区域 - 读取
  • 区域资源:包括 - 特定区域 - [example.com]
notion image

三、Docker环境

我自己使用的是Unraid提供的Docker,如果你在使用单独的Docker,也没有问题

四、路由器

为了实现内网和外网的一致,可以使用Openwrt的主机名映射功能。
notion image
最终实现的效果为:
内网访问:app.domain.com⇒192.168.1.80
外网访问:app.domain.com⇒[公网IP]
 
其他品牌路由器,可以搜索路由器品牌或型号+自定义Hosts。如果你的路由器不支持此功能,可以自建DNS服务或修改客户端hosts(不推荐)。各位大佬也可各显神通实现类似效果,有其他的方案欢迎评论区互相交流😃。
 

📎 参考文章

Traefik 篇三:Traefik的安装和配置Traefik 篇一:Home Server的反向代理,总体架构介绍
Loading...