概要
今更ですが GAE に入門してみました
Ruby アプリを動かします
作業は Google Cloud Shell で進めます
先に記載しておきますが App Engine の default リソースを使用するのでプロジェクトを削除する以外リソースを削除することができないので、もしリソースを削除したい場合はテスト用のプロジェクトを作成してから作業してください
環境
- Google App Engine (2018/08/23 時点)
準備
- git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples
- cd ruby-docs-samples/appengine/hello_world
デプロイ
- gcloud app deploy
Updating service [default] (this may take several minutes)...
が結構長いです
でしばらくするとデプロイが完了するので
- gcloud app browse
でブラウザを開いてアプリを確認しましょう
別のアプリをデプロイしてみる
default サービスは削除できないのでそのまま上書きデプロイしてみます
- cd
- git clone -b for_gce https://github.com/kakakikikeke/request-dumper.git
- cd request-dumper
- gcloud app deploy
同じようにデプロイが完了したらブラウザでアクセスしてみましょう
お掃除
default のサービスは消せません
また、default のサービスが可動しているインスタンスも削除できません
基本的にはアプリを止めておくしかできません
また CloudStorage にデプロイしたアプリのコンテナイメージが保存されているので、これも削除しておきましょう
アクセスがなければインスタンスが増えることもないので無料枠内で収まるはずです
もしどうしても削除したい場合はプロジェクト自体を削除するしかないようです
最後に
GAE に Ruby アプリをデプロイしてみました
自分のアプリを GAE で動かすには app.yaml を追加してあげるだけで OK です
GAE は現状コンテナで動かすのが定石になっているようです
Dockerfile がすでにある場合は app.yaml の runtime
を custom
にする必要があるようです
またアプリは 8080 ポートで LISTEN している必要があるようです
ビルドはそこまで時間はかからなかったのですが、デプロイに結構時間がかかるイメージでした
また気になったのは FROM でイメージを取得するのが gcr でなければいけないというドキュメントがあったのですが普通に dockerHub から持ってこれました
公式イメージであれば良いなどがあるのかもしれません
Tips
インスタンスの数を確認
gcloud app instances list
アプリのログは Stackdriver Logging に投げられています
0 件のコメント:
コメントを投稿