GCPコンテナをサーバ側で操作したくなったりしたので、gcloudコマンドの導入方法をメモしておく。
まず、Ubuntu/CentOS7に対応しているパッケージがあるので、それをインストールする。今回はCentOS7を利用したメモ。Debian/Ubuntuは公式ドキュメントを参照。
リポジトリを追加
$ sudo tee -a /etc/yum.repos.d/google-cloud-sdk.repo << EOM
[google-cloud-sdk]
name=Google Cloud SDK
baseurl=https://packages.cloud.google.com/yum/repos/cloud-sdk-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOM
gcloudをインストール
$ sudo yum install google-cloud-sdk -y
サービスアカウント認証
「IAMと管理」→「サービスアカウント」で適切な役割を付与してサービスアカウントを作成。 example@example-project.iam.gserviceaccount.com
というメールアドレスがサービスアカウントID。認証ファイルをJSONファイルでダウンロード。
$ gcloud auth activate-service-account \
example@example-project.iam.gserviceaccount.com \
--key-file /path/example-project-1234.json \
--project example-project
認証情報を確認。
$ gcloud auth list
Credentialed Accounts
ACTIVE ACCOUNT
* example@example-project.iam.gserviceaccount.com
To set the active account, run:
$ gcloud config set account `ACCOUNT`
Good :)
ちなみにgcloudコマンドの設定ファイルは ~/.config/gcloud/
ディレクトリにある。この中にクレデンシャルファイルも置いてある。