Node.js 12が一般提供になりました。

スタンダード環境で Node.js を使用するためのクイックスタート

リージョン ID

REGION_ID は、アプリの作成時に選択したリージョンに基づいて Google が割り当てる省略形のコードです。一部のリージョン ID は、一般的に使用されている国や州のコードと類似しているように見える場合がありますが、このコードは国または州に対応するものではありません。既存のアプリでは省略可能ですが、まもなく、新しいアプリのすべてにおいて App Engine の URL に REGION_ID.r を含めることが必須となる予定です。

移行がスムーズに行われるように、リージョン ID を使用するよう App Engine を徐々に更新しています。Google Cloud プロジェクトがまだ更新されていない場合、アプリにリージョン ID が表示されません。ID は既存のアプリでは省略可能なため、リージョン ID が既存のアプリで使用可能になったときに、URL の更新や他の変更を行う必要はありません。

詳しくは、リージョン ID をご覧ください。

このクイックスタートでは、サンプルアプリを App Engine にデプロイする方法を説明します。App Engine 向けのアプリのコーディングに関する詳細については、アプリの構築をご覧ください。

料金

このガイドの実行に伴う費用は発生しません。このサンプルアプリを実行するだけなら、無料の割り当てを超過することはありません。

始める前に

このクイックスタートを実行してデプロイする前に、Cloud SDK をインストールして、App Engine 用に Cloud プロジェクトを設定します。

  1. Cloud SDK をダウンロードしてインストールします。

    SDK をダウンロード

    : Cloud SDK がすでにインストールされている場合は、次のコマンドを実行して更新します。

    gcloud components update
    
  2. 新しいプロジェクトを作成します。

    gcloud projects create [YOUR_PROJECT_ID] --set-as-default
    

    [YOUR_PROJECT_ID] は、プロジェクトを一意に識別する文字列に置き換えます。例: my-project-24

    プロジェクトが作成されたことを確認します。

    gcloud projects describe [YOUR_PROJECT_ID]
    

    次のようなプロジェクトの詳細が表示されます。

    createTime: year-month-hour
    lifecycleState: ACTIVE
    name: project-name
    parent:
    id: '433637338589'
    type: organization
    projectId: project-name-id
    projectNumber: 499227785679
    
  3. プロジェクトで App Engine アプリを初期化し、そのリージョンを選択します。

    gcloud app create --project=[YOUR_PROJECT_ID]
    

    プロンプトが表示されたら、App Engine アプリケーションを配置するリージョンを選択します。

  4. プロジェクトで課金が有効になっていることを確認します。アプリケーションを App Engine にデプロイするには、課金アカウントをプロジェクトにリンクする必要があります。

    課金を有効にする

  5. 次の前提条件でインストールします。

App Engine のロケーション

App Engine はリージョナルです。つまり、アプリを実行するインフラストラクチャは特定のリージョンに配置され、そのリージョン内のすべてのゾーンで冗長的に利用できるように Google が管理しています。

レイテンシ、可用性、耐久性の要件を満たすことが、アプリを実行するリージョンを選択する際の主な要素になります。一般的には、アプリのユーザーに最も近いリージョンを選択できますが、App Engine が使用可能なロケーションと、アプリが使用するその他の Google Cloud プロダクトおよびサービスのロケーションを考慮する必要があります。使用するサービスが複数のロケーションにまたがっていると、アプリのレイテンシだけでなく、料金にも影響する可能性があります。

設定したアプリのリージョンは変更できません。

すでに App Engine アプリケーションを作成している場合は、次のいずれかの方法でそのリージョンを表示できます。

このクイックスタートでは、Express.js フレームワークで作成されたシンプルな Node.js アプリケーションについて具体的に説明します。

サンプルコードをダウンロードする

ここではシンプルな Hello World アプリケーションを使用し、App Engine へのウェブサービスのデプロイについて簡単に説明します。コードを開発環境にダウンロードする手順は以下のとおりです。

  1. Node.js サンプルアプリ リポジトリをダウンロードします。

    Cloud Shell

    Cloud Shell でリポジトリを開きます。

    Cloud Shell で開く

    ローカルマシン

    ZIP ファイルとしてリポジトリをダウンロードし、解凍します。

    または、git を使用してリポジトリのクローンを作成します。

    git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
    
  2. Hello World アプリが格納されているディレクトリに移動します。

    cd nodejs-docs-samples/appengine/hello-world/standard
    

Hello World をローカルで実行する

  1. プロジェクトの依存関係をインストールします。

    npm install
    
  2. HTTP サーバーを始動します。

    npm start
    
  3. ウェブブラウザでアプリを表示します。

    Cloud Shell

    Cloud Shell ツールバーの [ウェブでプレビュー] ウェブでプレビュー アイコンをクリックし、[ポート 8080 でプレビュー] を選択します。

    ローカルマシン

    ウェブブラウザで http://localhost:8080 にアクセスします。

    「Hello, world!」というメッセージがページに表示されます。

  4. ターミナル ウィンドウで Ctrl+C キーを押して HTTP サーバーを停止します。

Hello World を App Engine にデプロイして実行する

  1. hello-world/standard ディレクトリから次のコマンドを実行し、Hello World アプリを App Engine にデプロイします。

    gcloud app deploy
    
  2. https://PROJECT_ID.REGION_ID.r.appspot.com で公開されているライブアプリを表示します。

    gcloud app browse
    

これで、App Engine インスタンスで実行されているウェブサーバーによって、「Hello, world!」というメッセージが配信されるようになりました。

これで完了です。App Engine に Node.js ウェブサービスを正常にデプロイしました。

クリーンアップ

App Engine の学習を続ける場合は、Cloud プロジェクトを維持し、アプリのビルドの手順を進めてください。

あるいは、Cloud プロジェクトを削除して、そのプロジェクト内のすべてのリソースへの課金を停止することもできます。

  1. Cloud Console で [リソースの管理] ページに移動します。

    [リソースの管理] ページに移動

  2. プロジェクト リストで、削除するプロジェクトを選択し、[削除] をクリックします。
  3. ダイアログでプロジェクト ID を入力し、[シャットダウン] をクリックしてプロジェクトを削除します。

次のステップ

ここでは、App Engine 上でウェブサービスをデプロイしました。App Engine における Node.js のさらに詳しい使い方を知りたい方は、アプリの構築をお読みください。

App Engine スタンダード環境での Node.js ランタイムの詳細については、Node.js ランタイム環境をご覧ください。