演習 - フレームワーク依存デプロイ用に発行する

完了

フレームワークに依存するデプロイは、ASP.NET Core アプリの既定値です。 フレームワークに依存するアプリを発行すると、アプリのファイルと依存関係のみがデプロイ パッケージに含まれます。 .NET ランタイムは含まれません。 アプリを実行するには、ターゲット コンピューターに正しいバージョンの .NET ランタイムがインストールされている必要があります。

チーム リーダーから、デプロイ用にチームのアプリを準備するように求められました。 アプリを実行するサーバーには既に .NET ランタイムがインストールされているため、フレームワークに依存するデプロイとしてアプリを発行できます。 これにより、デプロイ パッケージのサイズが縮小され、アプリのデプロイが容易になります。

この演習では、フレームワークに依存するデプロイとして ASP.NET Core アプリを発行します。

ASP.NET Core アプリを作成する

チームのアプリの役割を果たすには ASP.NET Core アプリが必要です。 Visual Studio Code で C# Dev Kit 拡張機能を使用して、新しい ASP.NET Core アプリを作成してみましょう。

  1. Visual Studio Code を起動します。

  2. Ctrl + Shift + P キーを押してコマンド パレットを開きます。

  3. .NET 新しいプロジェクトを検索して選択します。

  4. [ASP.NET Core (空)] を見つけて選びます。

    ASP.NET Core Empty が選択されているコマンド パレットのスクリーンショット。

  5. 新しいプロジェクト用のフォルダーを選択または作成します。

  6. 新しいアプリに MyWebApp という名前を付けます

  7. [ プロジェクトの作成] を選択してプロジェクトを作成します。

アプリを実行する

アプリをテストして、実行されることを確認します。

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

    1. メッセージが表示されたら、デバッガーとして C# を選択します。
    2. メッセージが表示されたら、使用する起動 構成として C#: MyWebApp [既定 の構成] を選択します。

    このコマンドは、アプリを起動し、それをローカル Web サーバーでホストします。 ブラウザー ウィンドウが開き、"Hello, World!" と表示されます。

  2. Visual Studio Code で Shift キーを押しながら F5 キーを押して、ブラウザー ウィンドウを閉じてアプリを停止します。

フレームワークに依存するデプロイとしてアプリを発行する

アプリが正しく実行されていることを確認したので、フレームワークに依存するデプロイとして発行できます。

  1. Visual Studio Code で、 Ctrl + ' キー を押してターミナル ウィンドウを開きます。

  2. MyWebApp ディレクトリに移動します。

    cd MyWebApp
    
  3. 次のコマンドを実行してアプリを発行します。

    dotnet publish -c Release -o publish-fd    
    

    前のコマンドでは、次の手順を実行します。

    • -c Release では、アプリをリリース モードでビルドする必要があることを指定します。 これにより、パフォーマンスのためにアプリが最適化されます。
    • -o は出力ディレクトリの名前を指定します。 この場合、出力ディレクトリには publish-fd という名前が付けられます。

    このコマンドは、フレームワークに依存するデプロイとして、 publish-fd ディレクトリにアプリを発行します。

  4. Visual Studio Code エクスプローラー ウィンドウで、 MyWebApp/publish-fd ディレクトリの内容を展開し、ファイルの一覧を表示します。 ディレクトリにはアプリのファイルと依存関係が含まれますが、.NET ランタイム ファイルやソース コード ファイルは含まれません。 含まれるファイルとディレクトリの一部は次のとおりです。

    • MyWebApp.dll'**: コンパイル済みアプリ。
    • その他 の MyWebApp. ファイル: アプリを実行するために必要な追加のファイル。
    • appsettings.json: アプリの構成ファイル。
    • web.config: Windows 上の IIS (インターネット インフォメーション サービス) の構成ファイル。
    • wwwroot: 存在する場合、このディレクトリには、HTML、CSS、JavaScript ファイルなどの公開済みの静的 Web アセットが含まれます。 プロジェクトに静的な Web アセットが含まれていない場合、このディレクトリは生成されないため、この場合は存在しません。
  5. publish-fd ディレクトリに移動し、アプリを実行します。

    cd publish-fd
    dotnet MyWebApp.dll
    

    このコマンドは、発行されたアプリを起動し、Kestrel でホストします。 アプリに接続する Web ブラウザーには、Core ウェルカム ページと同じ既定 ASP.NET 表示されます。

  6. Web ブラウザーを閉じ、ターミナル ウィンドウで Ctrl + C キー を押してアプリを停止します。