.NET で Hello World を実行する方法

このチュートリアルでは、Visual Studio を使用して、Windows 開発環境から Windows Server 2016 を実行する Compute Engine インスタンスに ASP.NET Framework ベースの Hello World アプリをデプロイする方法について説明します。

このチュートリアルでは、ユーザーがすでに Visual Studio 2017 IDE for Windows 以降をインストールしており、.NET FrameworkC# 言語に精通していることを前提とします。

また、次の場合には、App Engine フレキシブル環境での .NET のクイックスタートを参照することもできます。

  • ASP.NET Core ベースの Hello World アプリをデプロイする必要がある。
  • 自動のスケールアップやスケールダウン、またロード バランシングを提供するベータ版の App Engine フレキシブル環境にアプリをデプロイする必要がある。
  • Visual Studio を使用せずにコマンドラインから Hell World アプリをデプロイする必要がある。

これは、GCP での .NET スタートガイド シリーズの一部です。始める前にの事前準備の手順を完了してから、チュートリアルを実施してください。チュートリアルは約 15 分で完了します。

始める前に

各ステップを完了したら、そのステップのチェックボックスをオンにしてください。

  1. check_box_outline_blank check_box Google Cloud Platform Console でプロジェクトを作成します。
    まだプロジェクトを作成していない場合は、このステップで作成します。プロジェクトにより、デプロイ、アクセス制御、課金、サービスなど、アプリに関するすべての Google Cloud Platform リソースを管理できます。
    1. GCP Console を開きます。
    2. 上部のプルダウン メニューで、[プロジェクトを作成] を選択します。
    3. [詳細設定を表示] をクリックします。
    4. プロジェクトの名前を指定します。
    5. プロジェクト ID をメモしておきます。この ID はプロジェクト名とは異なる場合があります。プロジェクト ID はコマンドや構成で使用します。
  2. check_box_outline_blank check_box プロジェクトの課金を有効化して、無料トライアルに登録します。

    プロジェクトの課金をまだ有効にしていない場合は、課金を有効化して、無料トライアルに登録します。課金を有効にすると、インスタンスの実行やデータの保存など、課金対象のリソースをアプリで使えるようになります。 無料トライアル期間中は、どのサービスも課金されることはありません。

アプリのダウンロードと実行

.NET を使用したシンプルな Hello World アプリが用意されています。これを使用することで、Google Cloud Platform(GCP)にアプリを素早くデプロイできます。前提条件を満たせば、Hello World サンプルアプリをダウンロードしてデプロイできます。ここでは、コードを入手してローカルでアプリを実行する手順を説明します。

Hello World アプリの入手

zip ファイルとしてサンプルをダウンロードし、ファイルを解凍します。

別の方法として、git リポジトリのクローンを作成することもできます。

$ git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git

ローカル コンピュータでアプリを実行する

  1. Visual Studio 2017 でアプリを開くには、aspnet\1-hello-world\1-hello-world.sln をダブルクリックします。

  2. Visual Studio で F5 キーを押し、アプリをビルドして実行します。

サンプルアプリが起動し、「Hello, World!」 というメッセージがページに表示されます。このページは、パソコン上で実行されているウェブサーバーから提供されます。

次に進む準備ができたら、Shift+F5 キーを押してアプリを停止します。

Hello World コードレビュー

このコードは、シンプルな ASP.NET アプリです。

        /// <summary>
        /// The simplest possible HTTP Handler that just returns "Hello World."
        /// </summary>
        public class HelloWorldHandler : HttpMessageHandler
        {
            protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request,
                CancellationToken cancellationToken)
            {
                return Task.FromResult(new HttpResponseMessage()
                {
                    Content = new ByteArrayContent(Encoding.UTF8.GetBytes("Hello World."))
                });
            }
        };

        public static void Register(HttpConfiguration config)
        {
            var emptyDictionary = new HttpRouteValueDictionary();
            // Add our one HttpMessageHandler to the root path.
            config.Routes.MapHttpRoute("index", "", emptyDictionary, emptyDictionary,
                new HelloWorldHandler());
        }

GCP 上での Hello World の実行

新しい Compute Engine インスタンスの作成と構成

まず、Google Cloud Platform Marketplace を使用して、Windows Server 2016、Microsoft IIS、ASP.NET、SQL Express がプリインストールされている新しい Compute Engine インスタンスを作成します。

  1. GCP Console で、GCP Marketplace の ASP.NET Framework のページに移動します。

  2. デプロイの名前と Compute Engine のゾーンを指定します。

  3. Compute Engine インスタンスをデプロイするには、[デプロイ] をクリックします。

Cloud Tools for Visual Studio のインストール

Cloud Tools for Visual Studio をインストールするには、次のインストール プロセスを行います。

  1. Visual Studio で、[ツール] > [拡張機能と更新プログラム] を選択します。

  2. 左ペインで、[オンライン] タブをクリックします。

  3. Google Cloud を検索します。

    [拡張機能と更新プログラム] ダイアログ

  4. [ダウンロード] をクリックして画面の指示に従います。

  5. 新しい拡張機能を読み込むには、Visual Studio を再起動します。

Visual Studio でアカウントを使用できるように Cloud Tools を構成する

  1. Visual Studio で、[ツール] > [Google Cloud Tools] > [Google Cloud Explorer を表示] を選択して Cloud Explorer を起動します。

  2. GCP リソースにアクセスするには、Google アカウントを追加します。[アカウントを選択または作成] をクリックします。

  3. [アカウントを追加] をクリックします。

    アカウントの管理

デフォルトの Windows ユーザーを新しい Compute Engine インスタンスに追加する

  1. Cloud Explorer で、新たに作成したプロジェクトを選択して Compute Engine を展開します。

  2. GCP Marketplace で作成した VM インスタンスを右クリックし、[Manage Windows credentials] を選択します。

    アカウントの管理

  3. [Add credentials] をクリックします。

  4. ユーザー名を入力します。

  5. [Create a password for me] を選択し、[保存] をクリックします。

  6. Reset the password for [YOUR USERNAME] on the instance [INSTANCE YOU CREATED]」([作成したインスタンス名] インスタンスの [ユーザー名] のパスワードをリセットしますか)と表示されたら、[リセット] をクリックします。

  7. [パスワード] ウィンドウを閉じるには、[閉じる] ボタンをクリックします。

  8. [Windows 認証情報] ウィンドウを閉じるには、[閉じる] ボタンをクリックします。

Windows インスタンスにアプリをデプロイする

  1. Visual Studio の [ソリューション エクスプローラー] ペインで、アプリを右クリックして [Publish to Google Cloud] をクリックします。

    Publish to Google Cloud

  2. [発行] ダイアログ ボックスで、[Compute Engine] をクリックします。

    Compute Engine へのパブリッシュを選択

  3. サンプルアプリをビルドしてデプロイするには、[発行] をクリックします。発行が完了すると、Visual Studio はアプリをデフォルトのウェブブラウザで開きます。

    アプリケーションをテストする

これで、Compute Engine インスタンスで ASP.NET アプリが正常に実行されます。

クリーンアップ

チュートリアルを完了し、割り当てたリソースをクリーンアップする場合は、クリーンアップをご覧ください。

このページは役立ちましたか?評価をお願いいたします。