回答:
gcloud config set project my-project
環境変数を設定することもできます$CLOUDSDK_CORE_PROJECT
。
gcloud config get-value project
他の回答が示すように、実際には名前ではなくプロジェクト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
フラグだけをコマンドの1つで使用する場合も同じです。
gcloud --project something-staging-2587 compute ssh my_vm
名前を使用すると、黙ってそれを受け入れますが、プロジェクトに何かをデプロイしようとすると、常に接続または権限の問題が発生します。
また、複数のプロジェクトを使用していて、毎回グローバルプロジェクトを設定したくない場合は、プロジェクト選択フラグを使用できます。
例:Google Cloud Platformでmy_vm
名前が付けられたプロジェクトで名前my_project
が付けられた仮想マシンを接続するには:
gcloud --project my_project compute 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
}
この回答を投稿して、GCPでプロジェクトを変更するために利用できる複数の方法についての洞察を提供します。次の各オプションをいつ使用するかについても説明します。
オプション1:Cloud CLI-CLIのCloud SDKでプロジェクトプロパティを設定する
特定のプロジェクトですべてのCloud CLIコマンドを実行する場合は、このオプションを使用します。
gcloud config set project <Project-ID>
これにより、選択されているプロジェクトCloud CLI
が変更され、現在選択されているプロジェクトが黄色で強調表示されます。
オプション2:Cloud CLI-ほとんどのコマンドでプロジェクトIDフラグを設定する
複数のプロジェクトでコマンドを実行する場合は、このコマンドを使用します。例:1つのプロジェクトでクラスターを作成し、同じ構成を使用して別のプロジェクトで作成します。各コマンドに次のフラグを使用します。
--project <Project-ID>
オプション3:クラウドCLI-CLIで構成を初期化する
このオプションは、プロジェクト/アカウントごとに個別の構成が必要な場合に使用できます。これにより、activate
コマンドを使用して構成を簡単に切り替えることができます。例:gcloud config configurations activate <congif-name>
。
gcloud init
オプション4:優先プロジェクトで新しいCloud Shellを開く
これは、CLIコマンドを使用したくない場合に推奨されます。押してPLUS +
新しいタブのボタンを。
次に、使用するプロジェクトを選択します。
.bash_alaisesにエイリアスを追加して、別のプロジェクトに切り替えます。
alias switch_proj1="gcloud config set project ************"
以下は、リストされたすべてのプロジェクトのエイリアスを生成するスクリプトです。switch_projを覚えやすい一意のプロジェクトエイリアスに更新してください。
gcloud projects list | awk '{print "alias switch_proj=\"gcloud config set project " $1 "\""}'
既存のプロジェクトを別のプロジェクトに更新するには、次のコマンドラインを使用できます。
gcloud projects update PROJECT_ID --name = NAME
NAME:プロジェクトの新しい名前になります。
gcloud config listを実行してプロジェクトを確認してから、gcloud config set "project name"
gcloud projects list