如何在 azure 上将 CNAME 重定向到 IP?

How do I redirect a CNAME to an IP on azure?

我在 azure 上有一个 docker VM,它给了我一个 IP 地址。我把我的A记录设置到这个ip,一切正常。

现在我想将其移至子域并将我的主域移至 github 页面。我怎么做? 如果我创建一个 webapp azure 会为我创建一个 cloudapp.net 域,但是使用 docker VM 我不知道如何获得它。

你的问题对于你想要实现的目标有点含糊,所以我会尝试涵盖显而易见的解决方案。

首先,您不能将 CNAME 指向 IP 地址,如果您需要将某些内容指向 IP,则可以使用 A 记录。然后您可以将 cname 指向该 A 记录。

所以你可以

;;Example.com
www         A         192.168.0.1
docker      CNAME     www.example.com 

对于 github 你可以有一个指向他们 IP 地址的 A 记录。

;;example.com
www        A         192.30.252.153
www        A         192.30.252.154

如果您只想 example.com 指向 github,您可以使用

;;example.com
@        A         192.30.252.153
@        A         192.30.252.154

如果要为 github 使用 cname,可以使用

;;example.com
www       CNAME         username.github.io

这仍然让您在 github 方面进行配置 - 请参阅 this document

至于docker机器。

我假设您实际上并不想要子域,即 www.docker.example.com,而是您想要 docker.example.com - 如果我在评论中这么说是错误的

如果您为 docker 实例配置了保留 IP 地址,只需将一条记录从您想要的名称指向该 IP 地址

;;Example.com
docker         A         192.168.0.1

不过,如果您使用的是 v1 域名或附加到您的 public IP 地址的域名,则更好的方法是为托管您的 docker 服务器的云服务创建一个 cname如果您使用的是 v2(资源管理器)。通过创建一个 cname,您无需担心 IP 地址的变化,因为 cname 将始终保持跟踪。

这样做,和上面完全一样,把相应的部分填上

对于 v1(如记录 here

;;Example.com
docker      CNAME     <Yourhostname>.cloudapp.net 

对于 v2

;;Example.com
docker      CNAME     <Yourhostname>.<region>.cloudapp.azure.com

希望那里应该足够让你开始!或者至少能够提出问题以获得您实际需要的东西。