Google compute engine 从Google计算引擎机器检索项目id?
我有两个谷歌云平台项目(登台和生产)。我想让部署在谷歌计算引擎实例上的应用程序自动检测项目id。该怎么做 您可以通过编程方式查询各种信息,包括项目id 对于项目id:Google compute engine 从Google计算引擎机器检索项目id?,google-compute-engine,google-cloud-platform,Google Compute Engine,Google Cloud Platform,我有两个谷歌云平台项目(登台和生产)。我想让部署在谷歌计算引擎实例上的应用程序自动检测项目id。该怎么做 您可以通过编程方式查询各种信息,包括项目id 对于项目id: $ curl "http://metadata.google.internal/computeMetadata/v1/project/project-id" -H "Metadata-Flavor: Google" $ curl "http://metadata.google.internal/computeMetadata/v
$ curl "http://metadata.google.internal/computeMetadata/v1/project/project-id" -H "Metadata-Flavor: Google"
$ curl "http://metadata.google.internal/computeMetadata/v1/project/numeric-project-id" -H "Metadata-Flavor: Google"
这将返回您的项目id,例如:mygcp项目
或者,如果需要数字项目id:
$ curl "http://metadata.google.internal/computeMetadata/v1/project/project-id" -H "Metadata-Flavor: Google"
$ curl "http://metadata.google.internal/computeMetadata/v1/project/numeric-project-id" -H "Metadata-Flavor: Google"
这将返回数字项目id,例如:
0123456789
您可以使用以下命令直接在shell脚本中确定项目id:
PROJECTID=$(curl -s "http://metadata.google.internal/computeMetadata/v1/project/project-id" -H "Metadata-Flavor: Google")
或者使用您语言的元数据库获取所需数据。我可以通过以下方式获得Golang的项目ID:
import "cloud.google.com/go/compute/metadata"
...
var ProjectId, _ = metadata.ProjectID()
在我的环境中,我有:
curl: (6) Could not resolve host: metadata.google.internal
以下几点对我很有用:
PROJECTID=`gcloud projects list | awk 'FNR>1 {print$1}'`
返回项目详细信息,然后分析项目id。metadata.google.internal在google cloud之外不可访问。问题的上下文是一个已经在谷歌云内运行的应用程序。@I.Tyger部署到GCP时-是的,当然。不记得它在本地是否有效。最有可能的是,它没有。它在本地不起作用。对于本地测试,我可能需要在本地工作的方法。