[google-cloud-platform] 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 ID`


답변

실제로 다른 답변에서 알 수 있듯이 프로젝트 ID는 이름이 아닌 프로젝트 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

이름을 사용하면 이름을 자동으로 수락하지만 프로젝트에 무언가를 배포하려고 할 때 항상 연결 또는 권한 문제가 발생합니다.


답변

gcloud를 이미 추가 한 프로젝트의 이름을 모르면 선택한 답변이 도움이되지 않습니다. 내 흐름은 활성 프로젝트를 나열한 다음 원하는 프로젝트로 전환하는 것입니다.

gcloud config configurations list

gcloud config configurations activate [NAME]
여기서 [NAME]은 이전 명령에서 나열됩니다.


답변

또한 둘 이상의 프로젝트를 사용하고 매번 글로벌 프로젝트를 설정하지 않으려 는 경우 select project flag를 사용할 수 있습니다 .

예를 들어, Google Cloud Platform에서 my_vm이름이 지정된 프로젝트에 이름이 지정된 가상 머신을 연결하려면 다음을 수행하십시오 my_project.

gcloud –project my_project 계산 ssh my_vm

이런 식으로 프로젝트 플래그를 지정 하여 여러 프로젝트로 작업하고 쉽게 변경할 수 있습니다 . 다른 GCP 플래그에 대한 자세한 내용은 여기참조하십시오 .


답변

내가하는 소수 이상의 프로젝트가 있다면 그 가치가 무엇입니까?

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 계정에 대한 로그인 및 표시 옵션을 요구합니다.

여러 조직과 프로젝트를 관리한다는 점을 감안할 때이 접근 방식을 통해 간단히 서로 전환 할 수 있습니다.


답변

나는 별칭을 선호하고 프로젝트 요구에 따라 여러 명령이 필요할 수있는 기능을 선호합니다 …

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
}