注册 EdgeRouter DNS 主机名
哇……好像花了2个小时才找到办法…… 开发进行到一定阶段后,我需要测试一下在手机上能否正常运行。\ Docker 中运行的后端 Laravel 和前端 Nuxt,在 SSR 阶段时,由于前端 Docker 已经把 api.localhost 域名 link 到 Docker 里了,所以连接一直都很正常, 真正的问题是,
哇……好像花了2个小时才找到办法……
开发进行到一定阶段后,我需要测试一下在手机上能否正常运行。
Docker 中运行的后端 Laravel 和前端 Nuxt,在 SSR 阶段时,由于前端 Docker 已经把 api.localhost 域名 link 到 Docker 里了,所以连接一直都很正常,
真正的问题是,手机上无法连接,而不是 SSR 阶段出了问题。
Docker 上次更新之后,即使不在 Hosts 中输入 127.0.0.1 domain,也会自动识别并连接了。(Traefik)
但手机上没法修改 Hosts。(据说安卓可以,但我是 iPhone 用户)
于是……我试过用 Windows 电脑开热点,也试过连接 Wi-Fi,但问题都没能解决……(最有希望的是 Windows 热点,但还是不行。也不知道是不是因为网络驱动器本身被单独分配了(?),总之没法连接到 Docker)
就这样……大约过了3个小时……
最后通过在路由器上强制设置 DNS 解决了……
我用的是 EdgeRouter,通过这里的 DNS host names configuration 解决了问题。

我输入了需要连接的域名,并在 IP Address 中输入了运行 Docker 的电脑的 IP。
这样一来,在手机连接到该 Wi-Fi(EdgeRouter)的状态下,访问该域名时,请求就会被发送到 IP 为 192.168.1.101、运行着 Docker 的电脑上,然后 Traefik 会捕获发往该域名的请求,并正常将其连接到 Docker 服务器。
