2020年2月11日火曜日

Google App Engine (スタンダード環境) のQuickstartをした


Quickstart for Go 1.12+ in the App Engine Standard Environmentのチュートリアルを試したのでその時のメモ。

まず、Cloud SDKとインストールする。
このページに従ってtar.gzファイルをダウンロードして展開。
省略可と書いてるけど以下のコマンドを実行。
% ./google-cloud-sdk/install.sh
# 統計情報を送信するか聞かれる
Y
# 続行するか聞かれる
Y
# 続行するか聞かれる
Y
# rc fileの場所を聞かれる
/Users/zick/.zshrc
.zshrcを確認すると末尾に以下の行が追加されていた
# The next line updates PATH for the Google Cloud SDK.
if [ -f '/Users/zick/prog/google-cloud-sdk/path.zsh.inc' ]; then . '/Users/zick/prog/google-cloud-sdk/path.zsh.inc'; fi

# The next line enables shell command completion for gcloud.
if [ -f '/Users/zick/prog/google-cloud-sdk/completion.zsh.inc' ]; then . '/Users/zick/prog/google-cloud-sdk/completion.zsh.inc'; fi
便利なことにTABキーでの補完も効くようになった。
省略可と書いてるけど次のコマンドも実行。
% ./google-cloud-sdk/bin/gcloud init
# ログインするか聞かれる
Y
# ブラウザが開くのでGoogleアカウントにログイン
# なんかチュートリアルと違う気がするけど、
# プロジェクトを選べと聞かれる。
# 何故か作成済みのプロジェクトがあったが、
# 新規プロジェクトを作成
2
# プロジェクト名を聞かれるのでテキトーに入力
hogehoge
チュートリアルでは次に gcloud projects create コマンドを実行すると書いてあるけど、多分既にプロジェクトが作られてしまったので省略。
プロジェクトが作られたか確認する。
% gcloud projects describe hogehoge
無事作られたことを確認。最初からあったプロジェクトも確認してみたら、2011-10-24に作られていた。学生のときになにか試したのかもしれないが全く覚えていない。見なかったことにする。
次はApp Engine appを作成する。
% gcloud app create --project=hogehoge
# regionを聞かれるので asia-northeast1 (東京) を選択
# ちなみに asia-northeast2 は大阪
2
次はbillingの設定をしろと書いてあるがお金の話は面倒なので後回しにした(そのせいで後で失敗する)。
gitをインストールしろと書いてあるがすでに入っているので無視。
Go用のApp Engine extensionをインストールするために以下のコマンドを実行
% gcloud components install app-engine-go
# 続行するか聞かれる
Y
「あんたがGoに詳しくてすでにインストールしてるのを仮定してるよ」と書いてある。Goに詳しくないのはさておき、Goをインストールしたのは大昔のためバージョンを確認。
% go version
go version go1.0.3
これはひどい。Goの公式サイトからmacOS用のpkgファイルをダウンロードしてgo1.13.7をインストールした。
次はサンプルプログラムをダウンロードしてデプロイ。
% git clone https://github.com/GoogleCloudPlatform/golang-samples.git
% cd golang-samples/appengine/go11x/helloworld
% gcloud app deploy
Updating service [default]...failed.
ERROR: (gcloud.app.deploy) Error Response: [7] Access Not Configured. Cloud Build has not been used in project hogehoge before or it is disabled.
どうせbillingの設定してないからだろうなと思ったらCloud Buildが無効だと言われる。なんやそれと思ったが、Cloud Buildを有効にするにはbillingの設定が必要という話のようだ。しぶしぶクレジットカードなどを登録して再度 gcloud app deploy を実行。今度は成功。Cloud Buildは自動で有効化された。
最後に起動したappをブラウザで確認。
% gcloud app browse
# ブラウザが起動する
あなたの予想に反して、 Hello, World! が表示された。

0 件のコメント:

コメントを投稿

code-prettify