読者です 読者をやめる 読者になる 読者になる

You do not have permission to modify this app (app_id=u's~xxxxxx'). 403 Error で Google Cloud Datalab 環境の新規作成に失敗した場合の解決方法

gcp google datalab

Google Cloud Datalab は Google が提供するクラウド上の iPython Notebook 環境で、ブラウザから簡単に環境構築ができるのでとても手軽に機械学習などの分析環境が手にはいる。ところが、セットアップしようとすると、たまにいつまでたってもデプロイが完了しないことがある。
そんな時、ログファイル(ブラウザのデプロイ画面にログファイルへのリンクがある)を開くと次のようなエラーメッセージが記載されている場合は以下の手順で解決することができる。

startupscript: WARNING: If this is your first deployment, please try again.
startupscript: ERROR: (gcloud.preview.app.deploy) Server responded with code [403]:
startupscript: Forbidden Unexpected HTTP status 403.
startupscript: You do not have permission to modify this app (app_id=u's~xxxxxx').
startupscript: Step deploy datalab module failed.

エラーの原因

このエラーが発生するのは Datalab をデプロイするアプリケーションのサービスアカウントに権限付与が正しく行われていない場合に発生する。
一度このエラーが発生すると何度やっても失敗する・・・

解決方法

Google Cloud Platform の Developer Console から、問題となっているサービスアカウントを削除して再度 Datalab のデプロイを行う。

1. Developer Console へのログイン

https://console.developers.google.com へアクセスして、左上のメニュープルダウンから、「Permissions 」へ

2. サービスアカウントの削除

-compute@developer.gserviceaccount.comで終わるメールアドレスのアカウント(または、最近だとメールアドレスの法則性は特になくて、Compute Engine service account と注釈が描かれているサービスアカウントが、問題のアカウントである場合もある)を探し削除する。

3. Datalab のデプロイをもう一度実行する

Datalab のデプロイ画面 にアクセスして、Sign-in to Start からもう一度デプロイを行う。

参考:Datalab Cloud Deployment 403 Error - stackoverflow