1. 概要
ASP.NET は、.NET を使用して最新のウェブアプリとサービスを構築するためのオープンソースのウェブ フレームワークです。ASP.NET は、HTML5、CSS、JavaScript に基づくウェブサイトを作成します。このウェブサイトはシンプルで高速であり、数百万人のユーザーにスケーリングできます。
このラボでは、Compute Engine で実行されている Windows Server にシンプルな ASP.NET アプリをデプロイします。この Codelab は、ASP.NET Framework を使用する Windows サーバーの Compute Engine へのデプロイ Codelab をベースにしています。そのラボを先に完了することをおすすめします。
また、ASP.NET アプリを記述して Compute Engine にデプロイするには、Visual Studio 2013 以降が必要です。
学習内容
- シンプルな ASP.NET アプリを作成する方法。
- Visual Studio で ASP.NET アプリをローカルで実行する方法。
- ASP.NET アプリを Compute Engine の Windows Server にデプロイして実行する方法について説明します。
必要なもの
- ブラウザ(Chrome、Firefox など)。
- Visual Studio 2013 以降がインストールされていること。
- .NET Framework と C# 言語に精通していること。
- Compute Engine で実行されている ASP.NET Framework を使用する Windows Server と、ASP.NET Framework を使用する Windows サーバーの Compute Engine へのデプロイ Codelab の Windows ユーザー名とパスワード。
このチュートリアルの利用方法をお選びください。
Google Cloud Platform のご利用経験について、いずれに該当されますか?
2. 設定と要件
セルフペース型の環境設定
前のラボで Google Cloud Platform プロジェクトを作成しているはずなので、新しいプロジェクトを作成する必要はありません。Google Cloud Platform のコンソール(console.cloud.google.com)にログインし、前のラボのプロジェクトを選択します。
3. ASP.NET アプリをダウンロードする
zip ファイルとしてサンプルをダウンロードし、ファイルを解凍します。
別の方法として、git リポジトリのクローンを作成することもできます。
git clone https://github.com/GoogleCloudPlatform/getting-started-dotnet.git
いずれの場合も、次の内容を含む getting-started-dotnet フォルダが必要です。

4. アプリケーションをローカルで実行する
aspnet\1-hello-world\hello-world.sln をダブルクリックします。Visual Studio でソリューションが開きます。

WebApiConfig.cs. をご覧ください。シンプルな HelloWorld HTTP ハンドラが含まれています。
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."))
});
}
};
Visual Studio で F5 キーを押して、アプリケーションをビルドして実行します。Visual Studio が NuGet の依存関係をダウンロードしてアプリをビルドすると、ブラウザに Hello World メッセージが表示されます。

アプリがローカルで実行されていることを確認したら、Shift+F5 を押してアプリケーションを停止します。
5. ASP.NET Framework を使用する Windows Server をデプロイする
このセクションでは、Google Cloud コンソールから Cloud Marketplace を使用して、Windows Server と ASP.NET Framework がインストールされた新しい Google Compute Engine 仮想マシン インスタンスを作成する方法について説明します。
Google Cloud コンソールにログインする
別のブラウザのタブまたはウィンドウから Google Cloud コンソール(https://console.cloud.google.com)に移動します。Google Cloud Platform に登録したときに設定したログイン認証情報、またはラボの試験監督から提供されたログイン認証情報を使用します。

Cloud Marketplace に移動する
Google Cloud コンソールで、画面左上の [プロダクトとサービス] のメニュー アイコンをクリックします。

[Cloud Marketplace] に移動します。

ASP.NET Framework を検索する
「ASP.NET」と入力して ASP.NET Framework を検索し、下の結果ボックスをクリックします。

Compute Engine で起動
次の画面で、[Compute Engine 上で起動] をクリックします。
新しいインスタンスの作成時に構成できるパラメータは多数ありますが、以下を使用します。
名前 |
|
デプロイ名 |
|
ゾーン |
|
マシンタイプ |
|
Windows Server OS バージョン |
|
ブートディスクの種類 |
|
ディスクサイズ(GB) | 100 デフォルトの 100 GB を使用していますが、ニーズに応じて増減できます。 |
ファイアウォール |
|
[デプロイ] をクリックして、Windows Server と ASP.NET Framework を使用した新しい仮想マシン インスタンスを作成します。新しいページが表示され、進行状況を確認できます。

完了したら、左側のメニューから [Compute Engine] に移動し、[VM インスタンス] を選択します。[VM インスタンス] リストに新しい仮想マシンが表示されます。

[外部 IP] をクリックすると、インスタンスから提供されるデフォルトの IIS ウェブサイトも表示されます。

マシンにリモート デスクトップ(RDP)接続することもできますが、まず Windows ユーザーとパスワードを作成する必要があります。
6. Windows ユーザーとパスワードを作成する
Windows のユーザーとパスワードを作成するには、[Windows パスワードを作成またはリセット] を選択します。

新しいウィンドウが開き、ユーザーを作成できます。デフォルトのままにして、[設定] を選択します。数秒後に、新しく作成されたパスワードを含む [新しい Windows パスワード] ダイアログが表示されます。このパスワードは、次のセクションで必要になるためメモしておきます。
7. Compute Engine の Windows Server にアプリケーションをデプロイする
Compute Engine インスタンスで実行されている Windows Server にアプリケーションをデプロイします。
まず、ASP.NET Framework を使用する Windows サーバーの Compute Engine へのデプロイでデプロイした Compute Engine インスタンスの外部 IP を確認する必要があります。Cloud コンソールで、[Compute] > [VM インスタンス] に移動し、インスタンスを見つけて外部 IP アドレスをメモします。

前の手順で作成した Windows のユーザー名とパスワードが必要になります。
Visual Studio の [ソリューション エクスプローラー] で、プロジェクトを右クリックし、コンテキスト メニューで [発行] を選択します。

[Web の発行] ダイアログで、発行先として [カスタム] を選択します。
[新しいカスタム プロファイル] ダイアログで、デプロイ プロファイルの名前を指定して [OK] をクリックします。
次のようにプロフィールを入力します。
サーバー |
|
サイト名 |
|
ユーザー名 |
|
パスワード |
|
リンク先 URL |
|
[接続の検証] をクリックして、プロパティが正しく入力されていることを確認します。

デプロイの Microsoft IIS インストールではデフォルトで自己署名証明書が使用されるため、検証プロセス中に証明書エラーが表示されます。[Save this certificate for future sessions of Visual Studio](この証明書を今後の Visual Studio セッション用に保存する)チェックボックスをオンにして、[Accept](同意する)をクリックして証明書に同意します。

構成が有効であれば、[設定] をクリックします。[ファイル発行オプション] をクリックし、[発行先の追加ファイルを削除する] をオンにします。これは、後で新しいウェブサイトを同じ Compute Engine インスタンスに公開する際に重要になります。

[公開] をクリックして、アプリケーションをデプロイします。発行が完了すると、Visual Studio はアプリケーションをデフォルトのウェブブラウザで開きます。

8. クリーンアップ
これで、それでは、使用したリソースをクリーンアップします(費用を節約し、クラウドのマナーを守るため)。
インスタンスを削除するか、単に停止することができます。ただし、停止したインスタンスでもストレージに関連する費用が発生する可能性があることに注意してください。

もちろん、プロジェクト全体を削除することもできますが、設定した課金はすべて失われます(最初にプロジェクトの課金を無効にする必要があります)。また、プロジェクトを削除しても、現在の請求期間が終了するまで請求は停止されません。
9. 完了
Google Compute Engine は、Google Cloud Platform の Infrastructure as a Service(サービスとしてのインフラストラクチャ)の基盤です。ご覧のとおり、Compute Engine の Windows Server に ASP.NET アプリをデプロイするのは非常に簡単です。
学習した内容
- シンプルな ASP.NET アプリを作成する方法。
- Visual Studio で ASP.NET アプリをローカルで実行する方法。
- ASP.NET アプリを Compute Engine の Windows Server にデプロイして実行する方法について説明します。
次のステップ
- Google Cloud Platform 上の Windows の詳細を学ぶ
- Google Cloud Platform での .NET の詳細を学ぶ
- Google Cloud Platform 上の SQL サーバーの詳細を学ぶ
- Cloud Tools for Visual Studio の使い方を学ぶ
- Cloud Tools for PowerShell の使い方を学ぶ
ライセンス
この作業はクリエイティブ・コモンズの表示 2.0 汎用ライセンスにより使用許諾されています。
/