よく忘れるのでメモ。
ググって出てくるページだと
gcloud auth application-default login
しろとか、コマンドが出てくるけどDockerだといろいろ面倒なので、鍵ファイルを用いた認証がしたい。
GCPのコンソールから「IAMと管理」→「サービスアカウントを作成」。
URL的には下記。
https://console.cloud.google.com/iam-admin/serviceaccounts/project?project={プロジェクトID}
当たり前だけど権限は必要なものだけにして、複数のアプリがあれば、それぞれに作ったほうが良い。
もし間違って鍵ファイルをGitHubに公開してしまった時などは危ないので、すぐこの画面から削除して、新しい鍵に差し替えればおk(以前やった)。
アプリごとに鍵を変えていれば、その作業も最低限で済む。
作成すると、鍵ファイルがJSON形式でダウンロードされるので、dockerのホストマシンにコピーする。名前は変更してしまっても良い。
ファイル名がkey.jsonだったらDockerfileで下記のようにコピ-。
そのファイル名を環境変数「GOOGLE_APPLICATION_CREDENTIALS」にファイル名を入れる。
COPY key.json key.json ENV GOOGLE_APPLICATION_CREDENTIALS key.json
これでビルドすれば、各言語のライブラリから特に難しいことなく認証が通る。
Google Application Default Credentials | Google Identity Platform | Google Developers
プログラマのためのDocker教科書 インフラの基礎知識&コードによる環境構築の自動化
- 作者: 阿佐志保,山田祥寛
- 出版社/メーカー: 翔泳社
- 発売日: 2015/11/20
- メディア: 大型本
- この商品を含むブログ (3件) を見る