如何使用cli命令在gcp中更改项目
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用cli命令在gcp中更改项目相关的知识,希望对你有一定的参考价值。
如何使用cli命令将当前运行的项目更改为GCP(Google Cloud Platform)帐户中的另一个项目,而不是手动使用gcloud init
。
$gcloud projects list
将列出我帐户上运行的项目。我想使用cli命令将当前项目从列表中更改为任何其他项目。
gcloud config set project my-project
您也可以设置环境变量$CLOUDSDK_CORE_PROJECT
。
确保使用正确的帐户进行身份验证:
gcloud auth list
* account 1
account 2
如果不是,请更改为项目的帐户:
gcloud config set account `ACCOUNT`
根据帐户,项目列表将有所不同:
gcloud projects list
- project 1
- project 2...
切换到预期的项目:
gcloud config set project `PROJECT NAME`
您应该实际使用项目ID而不是其他答案所暗示的名称。
例:
gcloud projects list
PROJECT_ID NAME PROJECT_NUMBER
something-staging-2587 something-staging 804012817122
something-production-24 something-production 392181605736
然后:
gcloud config set project something-staging-2587
当使用--project
标志和其中一个命令时,它也是一样的:
gcloud --project something-staging-2587 compute ssh my_vm
如果您使用该名称,它将默默接受它,但在尝试将某些内容部署到项目时,您将始终遇到连接或权限问题。
此外,如果您使用多个项目并且不想每次都设置全局项目,则可以使用select project标志。
例如:在Google Cloud Platform中名为my_vm
的项目下连接名为my_project
的虚拟机:
gcloud --project my_project compute ssh my_vm
这样,您可以使用多个项目,并通过放置项目标志轻松地在它们之间进行更改。您可以从here找到更多关于其他GCP标志的信息。
我更喜欢别名,对于可能需要多个命令的东西,根据你的项目需求,我更喜欢函数......
例
function switchGCPProject() {
gcloud config set project [Project Name]
// if you are using GKE use the following
gcloud config set container/cluster [Cluster Name]
// if you are using GCE use the following
gcloud config set compute/zone [Zone]
gcloud config set compute/region [region]
// if you are using GKE use the following
gcloud container clusters get-credentials [cluster name] --zone [Zone] --project [project name]
export GOOGLE_APPLICATION_CREDENTIALS=path-to-credentials.json
}
如果您不知道已添加gcloud的项目名称,则所选答案无效。我的流程是列出活动项目,然后切换到我想要的项目。
gcloud config configurations list
gcloud config configurations activate [NAME]
其中[NAME]从先前命令列出。
如果您拥有的项目数量超过少数项目的价值,请使用:
gcloud init
这将列出您的所有项目,并为您提供更改当前项目设置,添加新项目配置或切换的选项:
Pick configuration to use:
[1] Re-initialize this configuration [esqimo-preprod] with new settings
[2] Create a new configuration
[3] Switch to and re-initialize existing configuration: [default]
[4] Switch to and re-initialize existing configuration: [project 1]
[5] Switch to and re-initialize existing configuration: [project 2]
Please enter your numeric choice:
它总是会要求您登录并显示您可能拥有的不同Google帐户的选项。
鉴于我管理多个组织和项目,这种方法让我只需在它们之间切换。
我在.bash_alaises中添加别名以切换到另一个项目。
alias switch_proj1="gcloud config set project ************"
这是一个为列出的所有项目生成别名:)的脚本。请将switch_proj更新为您能记住的唯一项目别名。
gcloud projects list | awk '{print "alias switch_proj="gcloud config set project " $1 """}'
以上是关于如何使用cli命令在gcp中更改项目的主要内容,如果未能解决你的问题,请参考以下文章
我可以完全从 CLI 或脚本创建和配置 GCP 项目 + Firebase 吗?