Google cloud platform 如何通过CLI获取Google云SQL实例的IP

Google cloud platform 如何通过CLI获取Google云SQL实例的IP,google-cloud-platform,ip,cloud,command-line-interface,google-cloud-sql,Google Cloud Platform,Ip,Cloud,Command Line Interface,Google Cloud Sql,我在谷歌云平台上使用云SQL 将数据库的IP作为变量很有用,因此可以在脚本中使用它 可以使用什么命令来实现这一点 Bash示例: 出口DP_IP=$gcloud。。。。。。。。。。。。。。。。 更新:另请参见@rossco的回答 基本解决方案: export DB_IP=$gcloud sql实例描述$DATABASE_ID-project$project_ID-format'valueipaddress.ipAddress' 使用机密管理器的解决方案: 使用这些Bash命令,您可以获取url并

我在谷歌云平台上使用云SQL

将数据库的IP作为变量很有用,因此可以在脚本中使用它

可以使用什么命令来实现这一点

Bash示例:

出口DP_IP=$gcloud。。。。。。。。。。。。。。。。 更新:另请参见@rossco的回答

基本解决方案:

export DB_IP=$gcloud sql实例描述$DATABASE_ID-project$project_ID-format'valueipaddress.ipAddress' 使用机密管理器的解决方案:

使用这些Bash命令,您可以获取url并将其保存在Secrets Manager中:

首先创建空秘密:

gcloud secrets create DB_IP-project$project_ID-replication policy=automatic 然后:

gcloud sql实例描述$DATABASE_ID-project$project_ID-format'valueipaddress.ipAddress'-project$project_ID | gcloud secrets versions add DB_IP-data file=-project$project_ID 或添加了以下内容的版本:5432

DB_IP=$gcloud sql实例描述$DATABASE_ID-project$project_ID-format'valueipaddress.ipAddress'捕获第一个字符串。 echo$DB_IP:5432 | gcloud secrets versions添加DB_IP-data file=-project$project_ID 然后,您可以根据需要从Secrets Manager加载它:

export DB_IP=$gcloud secrets versions access latest-secret=DB_IP-project$project\u ID Yoiu可以试试这个:

$ echo $(gcloud sql instances describe [instance id] --format="value(ipAddresses.ipAddress)")

当多个IP地址可用时(例如公共、传出和私有),接受的答案将不起作用。要从特定实例中选择感兴趣的IP地址,需要根据地址类型进行筛选。 例如,获取命名实例的私有IP

gcloud sql instances list --filter=name:$DATABASE_ID --format="value(PRIVATE_ADDRESS)"
如果需要公共地址,请将PRIVATE_ADDRESS更改为PRIMARY_ADDRES