0

我已经使用谷歌计算云部署了一个应用程序,该应用程序从原始临时 IP 地址可见......如何将此临时 IP 链接到我的域?

为了使这更容易,我在Google Domains注册了域 (mydomain.org)

我在我的托管区域上添加了 A 类记录集:

gcloud dns managed-zones describe  myzone


creationTime: '2016-03-28T23:05:31.385Z'
description: just another zone
dnsName: mydomain.org.
id: '2379583277824599330'
kind: dns#managedZone
name: myzone
nameServers:
- ns-cloud-e1.googledomains.com.
- ns-cloud-e2.googledomains.com.
- ns-cloud-e3.googledomains.com.
- ns-cloud-e4.googledomains.com.

从这里您可以看到应用程序可见的原始 IP (111.222.333.444)

gcloud dns record-sets list  --zone myzone 

NAME                       TYPE  TTL  DATA
mydomain.org.  A     5    111.222.333.444
mydomain.org.  NS    6    ns-cloud-e1.googledomains.com., ns-cloud-e2.googledomains.com., ns-cloud-e3.googledomains.com., ns-cloud-e4.googledomains.com.
mydomain.org.  SOA   6    ns-cloud-e1.googledomains.com. cloud-dns-hostmaster.google.com. 1 21600 3600 1209600 300

然而当我做一个

curl mydomain.org

它只是响应(类似于浏览器)

curl: (6) Could not resolve host: mydomain.org

但使用原始 IP 它正确连接到云应用程序

curl 111.222.333.444

这里我展示了一些命令行 DNS 查找

nslookup mydomain.org ns-cloud-e1.googledomains.com.

输出

Server:     ns-cloud-e1.googledomains.com.
Address:    216.239.32.110#53

Name:   mydomain.org
Address: 111.222.333.444

我错过了什么?gcloud dns我缺少什么命令?该过程将是:将应用程序部署到临时 IP -> 发出未知命令以将此 IP 链接到域......我希望能够在每次部署(新的临时 IP)后从我仍在开发中的应用程序中发出这个......我不想要静态 IP

我使用命令行工具 gcloud 和 kubectl 部署了该应用程序,因此它是 Google Compute (IaaS) 应用程序而不是 Google App Engine (PaaS) 应用程序

几天前我做了域名注册,所以域名已经传播了

4

2 回答 2

1

由于 Cloud DNS 名称服务器似乎很乐​​意解析域,因此我会仔细检查 Cloud DNS 是否实际上设置为您的域的名称服务器:

$ dig NS mydomain.org.

于 2016-04-06T21:44:02.467 回答
0

这是通常适用于托管服务提供商的解决方案。它涉及在您创建域(域注册商)和部署应用程序的位置之间来回切换:

  • 在您的域名注册商处创建您的域名...忽略其名称服务器列表...您将用新的LIST替换原始列表
  • 无论您在何处部署您的应用程序,都将能够定义某种 DNS 托管区域……为您的域创建一个新区域,该区域将自动填充新的名称服务器列表……复制此列表
  • 返回您的域注册商并使用该列表更新您的域的名称服务器(记录类型 NS)
  • 部署您的应用程序,这将显示一个全新的 IP
  • 进入 DNS 托管区域并使用此新 IP 更新您的 A 类记录
于 2016-08-10T15:17:50.917 回答