gcloudコマンドで特定のプロジェクトに対しての操作するときの事始め。
毎度の操作で必要になるのでまとめる。
Docker経由で利用することを想定してるので、ホスト機で直に使う際とちょっとやり方が違うかもしれないのでご注意を。
質問・訂正・改善・苦情・ご意見あれば、コメントにてよろしくお願いします。
gcloudコマンドで対象のプロジェクトに対して何かする前に必要なこと
以下の二つ
- アカウント認証
- 対象プロジェクトセット
プラス、操作によっては
- APIの有効化
が必要。
あ、プロジェクト自体はすでに作られている前提で。
gcloudコマンド用意
Docker利用時は、こちらからどうぞ。
ホスト機に直でインストールする場合は下記を参考に。
アカウント認証
Cliでgcloudコマンドを使って認証を通します。
gcloud auth login
=>Go to the following link in your browser:
https://accounts.google.com/o/oauth2/auth?redirect_uri=...
Enter verification code:
Go to the following link in your browser: とあるので、下部に記載されてるURLにブラウザでアクセス。
ログインを求められるので、有効なgoogleアカウントでログインして…
許可して…
こんな感じでトークンが吐き出されるので、コピー。
先の
Enter verification code: 4/QQH98erq7Da5h093ZVUrNrwlQq6RnLxxxxxxxxxxxxxx
にコピーしたトークンを貼り付けてエンター
=> WARNING: `gcloud auth login` no longer writes application default credentials.
If you need to use ADC, see:
gcloud auth application-default --help
You are now logged in as [xxxx@gmail.com].
Your current project is [some-project]. You can change this setting by running:
$ gcloud config set project PROJECT_ID
以降、認証したユーザーでのgcloudコマンドが実行できるようになる。
対象プロジェクトセット
アカウント認証した際の出力最下部に記載あるように
(直近のプロジェクトがセットされている状態?)
You are now logged in as [xxxx@gmail.com].
Your current project is [some-project]. You can change this setting by running:
$ gcloud config set project PROJECT_ID
変更したい場合は、下記の通りにすることで変更ができる。
gcloud config set project other_project
現在の、認証状態や対象プロジェクト、その他諸々コンフィグを覗き見るには、
gcloud config list
=> [core]
account = xxxx@gmail.com
disable_usage_reporting = True
project = other-project
Your active configuration is: [default]
などとして確認できる。
APIの有効化
以上で、対象プロジェクトに対して gcloud で色々できるようになるのですが、
コマンドによっては、プロジェクトで APIを有効化 しておかないと使えなかったりするので、
適宜有効化して利用します(これが結構わかりにくい…)
自分は、GCPのConsole上でポチポチ選んで有効化してます。
公式ドキュメントでAPIが一覧に網羅されてますが、実際どれ使うねん。てのがいまいちわかりにくい。。。
ので、gcloudを利用する際必要になるAPIは利用する度にどのAPIを使う必要があるか備忘をつけておくと、後々困らないかと思います。
まぁ、変更も多いので昔使えてたAPIがアレに変わった、なくなった等もよくあるんですが。。。
複数の構成設定について
公式: 複数の構成にある通り、複数の設定をして、利用することができるみたいですが、こちらDockerコンテナ内でプロジェクト毎に運用してるのであまり利用したことはありません。
どなたかうまいやり方があればご教授いただけたらなと思います。