実践GCP ③:Google App Engineを使ってみよう

GCPについて前回の記事はこちら

実践GCP ①:プロジェクトを始めよう
実践GCP ②:Serviceアカウントを設定しよう

GCPを本格的に使える準備が整えました。
まずはGAEでサイトを復旧します。



その前に

もし課金が有効化されてない場合は課金をアカウントを有効化する必要があります。
(GAEをデプロイする時必要です。)
下のURLから課金アカウントをプロジェクトにリンクします。
https://console.cloud.google.com/projectselector2/billing


  • Google App Engineを開始する
  • GAEを活性化するには2つの方法があります。
    • ダッシュボードのApp Engineタブからプロジェクト開始
    • コマンドラインでgcloud sdkからプロジェクト開始
    僕はコマンドラインからプロジェクトを作ります。
    まずSDKを更新しましょう

    > gcloud components update

    habanero2プロジェクトにApp Engineを初期化します。

    > gcloud app create --project=habanero2

    そこで地域を選択します。(※地域は後で変更できません)僕はTokyoであるnortheastを選択しました。

    ハバネロのポータルがあるフォルダーに移動します。デプロイする前にapp.yamlを開いて設定を変えます。




    設定の中に 「env : flex」 があったらフレキシブル環境になるので削除します。フレキシブル環境にすると結構の費用が請求されます。
    (プロジェクトをマイグレーションすることになった理由)

    スタンダード環境にする場合費用を決める要素はインスタンス利用時間だけて、1個のインスタンスのみであれば無料で使用できます。それ以外にもスタンダード環境の場合は使用可能言語の制限とか色々ありますが、本サイトはnode.js使っているし1つのサービスを運営するには充分です。


    スタンダード環境とフレキシブル環境の違いはこちらで確認できます。
    https://cloud.google.com/appengine/docs/the-appengine-environments

    インスタンスが増て追加費用は請求されないように最大インスタンスを1に設定します。

    automatic_scaling:
        max_instance: 1

    設定が終わったら保存してサイトをデプロイします。

    > gcloud app deploy

    yを押してデプロイするとビルドが行い、サイトがアップロードされます。


    ※ 最近GAEのドメイン命名規則が変りました。
    既存:[ProjectID].appspot.com
    現在:[ProjectID].[地域コード].r.appspot.com

    新しいURLは以下になります。
    https://habanero2.an.r.appspot.com/



    デプロイが完了するとブラウザーで確認してみます。

    > gcloud app browse




    サイトが正しく表示されることが確認できました。


    ゲームをアップロードするにはゲームサーバーを起動するためGCEを開始する必要がありますが、今回はGoogle Endpoint Serviceを使ってSSL問題と外部IP使用料の問題を避けてみようとしてます。それについてはまた次回の記事で書いてみたいと思います。



    ※ 元ブログから移転された記事です。

    コメント