さらに新しい編。ドカベンか!
今度は、Google Container Registry へのpushを試してみます。
始める前の準備
Container Registry のクイックスタート
https://cloud.google.com/container-registry/docs/quickstart?hl=ja
プロジェクトは既存のものを使用します。
課金の設定もしてあります。
Container Registry APIの有効化は、こちらのページのリンクボタンからGCP画面へ飛んで行って、ボタンを押していけばできます。
Google Cloud SDKはインストール済みでしたので、ここもスキップ。
この時にインストールしたのですね。
サイト引っ越し、そして、再引っ越し(Part2)
https://www.programmers-office.ml/2018/12/22/%E3%82%B5%E3%82%A4%E3%83%88%E5%BC%95%E3%81%A3%E8%B6%8A%E3%81%97%E3%80%81%E3%81%9D%E3%81%97%E3%81%A6%E3%80%81%E5%86%8D%E5%BC%95%E3%81%A3%E8%B6%8A%E3%81%97%EF%BC%88part2%EF%BC%89/
Dockerもインストール済み。ビルド済み。
認証から行きます。
認証してpush
gcloud auth configure-docker
でDocker config fileへの更新確認をされるので、Yで進めます。
次にイメージにタグをつけます。
そしてpushしようとすると、認証できていない・・・
denied: Token exchange failed for project ‘xxx’. Caller does not have permission ‘storage.buckets.create’. To configure permissions, follow instructions at: https://cloud.google.com/container-registry/docs/access-control
バックエンドとして Cloud Storage バケットを使用している、ということで、そちらの設定が必要ということです。
となると、Always Freeの範囲内かが気になりますが、下記を参照して、リージョンを考えましょう。
Cloud Storage の Always Free の使用制限
https://cloud.google.com/storage/pricing?hl=ja
Regionalでus-east1を選択します。
その上で、gsutil lsを叩いて、そのストレージが表示されることを確認します。私の場合、gcloud auth loginで認証をやり直して、gcloud config set project PROJECT_IDでプロジェクトを選択し直して、表示されるようになりました。
そうすると、pushできるようになりました。
pushはできるんですよ、pushは・・・