Azure Stack Hub で VM に Node.js Web アプリをデプロイする

Azure Stack Hub で Node.js Web アプリをホストする仮想マシン (VM) を作成することができます。 この記事では、サーバーを設定し、Node.js Web アプリをホストするようにサーバーを構成してから、アプリを Azure Stack Hub にデプロイします。

グローバル Azure に関する全般的な情報については、「JavaScript および Node.js 開発者向けの Azure」を参照してください。 この記事では、Azure のオンプレミス バージョンである Azure Stack Hub の使用について説明します。

VM の作成

  1. Web アプリをホストする Linux VM を Azure Stack Hub にデプロイする」の手順に従って、Azure Stack Hub で VM を設定します。

  2. VM ネットワーク ウィンドウで、次のポートにアクセスできることを確認します。

    Port Protocol 説明
    80 HTTP ハイパーテキスト転送プロトコル (HTTP) は、サーバーからの Web ページの配信に使用されるプロトコルです。 クライアントは、DNS 名または IP アドレスを使用して HTTP 経由で接続されます。
    443 HTTPS ハイパーテキスト転送プロトコル セキュア (HTTPS) は、セキュリティ証明書を要求し、情報の暗号化された転送を許可する、セキュリティで保護されたバージョンの HTTP です。
    22 SSH Secure Shell (SSH) は、セキュリティで保護された通信のための暗号化されたネットワーク プロトコルです。 SSH クライアントとのこの接続を使用して、VM を構成し、アプリをデプロイします。
    3389 RDP 省略可能。 リモート デスクトップ プロトコル (RDP) では、リモート デスクトップ接続を介して、ご利用のマシンでグラフィック ユーザー インターフェイスを使用できるようにします。
    3000 Custom Node.js Express フレームワークによって使用されるポート。 運用サーバーでは、80 と 443 を介してトラフィックをルーティングします。

Node をインストールする

  1. SSH クライアントを使用して VM に接続します。 手順については、PuTTY を使用する SSH 経由での接続に関する記述を参照してください。

  2. ご自分の VM 上の bash プロンプトで、次のコマンドを入力します。

      sudo apt-get update
      sudo apt-get install nodejs
      sudo apt-get install npm
    

    これにより、Node.js パッケージ (モジュール) 用のパッケージ マネージャーである NPM もインストールされます。

  3. インストールを検証します。 SSH セッション内でご自分の VM に接続したままで、次のコマンドを入力します。

       node --version
    

Express ジェネレーターを使用した新しいアプリケーションのスキャフォールディング

Express は、Node.js アプリケーションの構築と実行に広く使われているフレームワークです。 Express ジェネレーター ツールを使用して、新しい Express アプリケーションをスキャフォールディング (作成) できます。 Express ジェネレーターは npm モジュールとして提供されており、npm コマンドライン ツール (npx) を使用して直接 (インストールなしで) 実行できます。

 npx express-generator myExpressApp --view pug --git

--view pug --git は、pug テンプレート エンジン (旧称 jade) を使用すること、また .gitignore ファイルを作成することをジェネレーターに伝えるパラメーターです。

アプリケーションの依存関係をすべてインストールするために、新しいフォルダーに移動して npm install を実行します。

cd myExpressApp
npm install

アプリケーションを実行します。 ターミナルから npm start コマンドを使用してアプリケーションを起動し、サーバーを起動します。

Web ブラウザーで新しいサーバーにアクセスします。 実行中のご自分の Web アプリケーションを確認できます。 Linux VM の URL は、Azure Stack Hub ユーザー ポータルの [DNS 名] というラベルで確認できます。

http://yourhostname.contoso.com:3000

次のステップ