0. 事前準備
手元のPCへのインストールは不要です。
ハンズオンはすべてブラウザ(Google Cloud コンソールとCloud Shell エディタ)で完結します。
用意するもの
Google Cloud アカウント
会社のGoogle Workspaceアカウントではなく、個人アカウントを推奨します。
会社アカウントは、管理者設定でAPIが無効化されていたり、組織ポリシーによって進行できない箇所が出てくる可能性があります。
Google Chrome などのモダンブラウザ
シークレット(プライベート)モードは避けてください。
サードパーティCookieが無効だと Cloud Shell エディタが開けないことがあります。
トラブルシューティング
gcloud services enableで課金エラーが出る — プロジェクトに課金アカウントが紐付いていません。課金ページから紐付けてください。- Cloud Shell エディタが開かない・真っ白になる — シークレットモードやサードパーティCookieのブロックが原因のことが多いです。通常モードのブラウザで開き直すか、エディタを新しいウィンドウで開いてください。
--allow-unauthenticatedが権限エラーで失敗する — 会社アカウントの組織ポリシー(ドメイン制限共有)が原因の可能性が高いです。個人アカウント+個人プロジェクトに切り替えてください。- IAM 権限を付与した直後に 403 が返る — IAM の変更の反映は通常2分程度、場合によっては5分以上かかります。数分待ってからリトライしてください。
- Cloud Shell が切断された・タブを閉じてしまった・環境変数が消えた — ファイルは
$HOMEパス配下に置くので消えずに残っており、失われるのはexportを実行する環境変数だけです。どの章にいても、5章の「0. 環境変数の準備」を再実行すれば復元できます。
途中で分からなくなったら
- その手順の直後にある「成功していれば」を読む。
- 5章以降の主要な手順の後には「 成功していれば 」(そこまでで何が表示されていれば正解か)が付いています。まずここと見比べるのが最短です。
- 5章の「環境変数の準備」には「 詰まったら 」(よくある原因と復旧コマンド)も付いています。
- 環境変数を疑う。
- コマンドが
--region=や-docker.pkg.dev//のように途中が空で失敗する場合は、Cloud Shell の再接続で環境変数が消えています。上の「Cloud Shell が切断された」の項目を見てください。
- コマンドが
- 同じコマンドを、そのまま再実行する。
- この教材のコマンドは、何度実行しても同じ結果になるように作ってあります。
- 例えば、
gcloud run deployは新しいリビジョンを作るだけ、ALREADY_EXISTSは「すでにある」という意味なのでそのまま次へ進んで構いません。
- 章の頭からやり直す。
- それでも状態が分からなくなったら、その章の最初の手順から順にコピペし直すのが確実です。
- 各章は前章の完了状態を前提にしているので、前の章の手順を先に済ませてください。
- リポジトリをcloneしなおす。
- 3章の「4. サンプルコードを手元に用意する」のコードブロックを再実行すると、
~/cloudrun-handsonが初期状態に戻ります。 - 6章以降で書き換えた
src/index.tsも元に戻るので、必要ならその章の書き換えからやり直してください。
- 3章の「4. サンプルコードを手元に用意する」のコードブロックを再実行すると、