Visual Studio を使用して Azure に ASP.NET Core アプリを発行するPublish an ASP.NET Core app to Azure with Visual Studio

作成者: Rick AndersonBy Rick Anderson

重要

Azure App Service と ASP.NET Core のプレビュー リリースASP.NET Core preview releases with Azure App Service

ASP.NET Core のプレビュー リリースは、既定では Azure App Service に展開されません。ASP.NET Core preview releases aren't deployed to Azure App Service by default. ASP.NET Core プレビュー リリースを使用するアプリをホストするには、「Azure App Service に ASP.NET Core プレビュー リリースを展開する」を参照してください。To host an app that uses an ASP.NET Core preview release, see Deploy ASP.NET Core preview release to Azure App Service.

macOS で作業している場合は、「Visual Studio for Mac を使用して Azure App Service に Web アプリを発行する」を参照してください。See Publish a Web app to Azure App Service using Visual Studio for Mac if you are working on macOS.

App Service の配置に関する問題を解決するには、「Azure App Service および IIS での ASP.NET Core のトラブルシューティング」を参照してください。To troubleshoot an App Service deployment issue, see Azure App Service および IIS での ASP.NET Core のトラブルシューティング.

設定Set up

Web アプリの作成Create a web app

Visual Studio のスタート ページで、 [ファイル]、[新規作成]、[プロジェクト] の順に選択します。In the Visual Studio Start Page, select File > New > Project...

[ファイル] メニュー

[新しいプロジェクト] ダイアログで次のように設定します。Complete the New Project dialog:

  • [ASP.NET Core Web アプリケーション] を選択します。Select ASP.NET Core Web Application.
  • [次へ] を選択します。Select Next.

[新しいプロジェクト] ダイアログ

[新しい ASP.NET Core Web アプリケーション] ダイアログで次の手順を実行します。In the New ASP.NET Core Web Application dialog:

  • [Web アプリケーション] を選択します。Select Web Application.
  • [認証] で [変更] を選択します。Select Change under Authentication.

[新しい ASP.NET Core Web アプリケーション] ダイアログ

[認証の変更] ダイアログが表示されます。The Change Authentication dialog appears.

  • [個人のユーザー アカウント] を選択します。Select Individual User Accounts.
  • [OK] を選択して [新しい ASP.NET Core Web アプリケーション] に戻り、 [作成] を選択します。Select OK to return to the New ASP.NET Core Web Application, then select Create.

新しい ASP.NET Core Web 認証ダイアログ

Visual Studio によってソリューションが作成されます。Visual Studio creates the solution.

アプリを実行するRun the app

  • Ctrl キーを押しながら F5 キーを押してプロジェクトを実行します。Press CTRL+F5 to run the project.
  • [プライバシー] リンクをテストします。Test the Privacy link.

Microsoft Edge で開いているローカルホストの Web アプリケーション

ユーザーを登録するRegister a user

  • [登録] を選択して、新しいユーザーを登録します。Select Register and register a new user. 架空の電子メール アドレスを使用できます。You can use a fictitious email address. 送信すると、ページに次のエラーが表示されます。When you submit, the page displays the following error:

    A database operation failed while processing the request./(要求の処理中にデータベースの操作に失敗しました。/)Applying existing migrations for Application DB context may resolve this issue. /(アプリケーション DB コンテキストの既存の移行を適用すると問題が解決する場合があります。/)"A database operation failed while processing the request. Applying existing migrations for Application DB context may resolve this issue."

  • [Apply Migrations]/(移行を適用する/) を選択し、移行が完了したら、ページを更新します。Select Apply Migrations and, once the page updates, refresh the page.

要求の処理中にデータベースの操作に失敗しました。

アプリに、新しいユーザーの登録に使用した電子メールと [ログアウト] リンクが表示されます。The app displays the email used to register the new user and a Logout link.

Microsoft Edge で開いている Web アプリケーション。

Azure にアプリを配置するDeploy the app to Azure

ソリューション エクスプローラーでプロジェクトを右クリックし、 [発行] を選択します。Right-click on the project in Solution Explorer and select Publish....

[発行] リンクが選択された状態でコンテキスト メニューが開きます

[発行] ダイアログで、次の操作を行います。In the Publish dialog:

  • [Azure] を選択します。Select Azure.
  • [次へ] を選択します。Select Next.

[発行] ダイアログ

[発行] ダイアログで、次の操作を行います。In the Publish dialog:

  • [Azure App Service (Linux)] を選択します。Select Azure App Service (Linux).
  • [次へ] を選択します。Select Next.

[発行] ダイアログ: Azure サービスを選択

[発行] ダイアログで、 [新しい Azure App Service の作成...] を選びます。In the Publish dialog select Create a new Azure App Service...

[発行] ダイアログ: Azure サービス インスタンスを選択

[App Service の作成] ダイアログが表示されます。The Create App Service dialog appears:

  • [アプリ名][リソース グループ][App Service プラン] の各入力フィールドに値が設定されます。The App Name, Resource Group, and App Service Plan entry fields are populated. これらの名前を保持することも、変更することもできます。You can keep these names or change them.
  • [作成] を選択します。Select Create.

[App Service の作成] ダイアログ

作成が完了すると、ダイアログが自動的に閉じられ、 [発行] ダイアログに再度フォーカスが移ります。After creation is completed the dialog is automatically closed and the Publish dialog gets focus again:

  • 作成したばかりの新しいインスタンスが自動的に選択されます。The new instance that was just created is automatically selected.
  • [完了] を選択します。Select Finish.

[発行] ダイアログ: App Service インスタンスを選択

次に、発行プロファイルの概要ページが表示されます。Next you see the Publish Profile summary page. Visual Studio によって、このアプリケーションには SQL Server データベースが必要であることが検出されているため、構成するように求められています。Visual Studio has detected that this application requires a SQL Server database and it's asking you to configure it. [構成] をクリックします。Select Configure.

発行プロファイルの概要ページ: SQL Server 依存関係の構成

[依存関係の構成] ダイアログが表示されます。The Configure dependency dialog appears:

  • [Azure SQL Database] を選択します。Select Azure SQL Database.
  • [次へ] を選択します。Select Next.

SQL Server の依存関係の構成ダイアログ

[Azure SQL Database の構成] ダイアログで [SQL Database の作成] を選択します。In the Configure Azure SQL database dialog select Create a SQL Database

[Azure SQL Database の構成] ダイアログ

Azure SQL Database の作成が表示されます。The Create Azure SQL Database appears:

  • [データベース名][リソース グループ][データベース サーバー][App Service プラン] の各入力フィールドに値が設定されます。The Database name, Resource Group, Database server and App Service Plan entry fields are populated. これらの値を保持することも、変更することもできます。You can keep these values or change them.
  • 選択した [データベース サーバー][データベース管理者のユーザー名][データベース管理者のパスワード] を入力します (注: 使用するアカウントには、新しい Azure SQL データベースを作成するために必要なアクセス許可が必要です)。Enter the Database administrator username and Database administrator password for the selected Database server (note the account you use must have the necessary permissions to create the new Azure SQL database)
  • [作成] を選択します。Select Create.

新しい [Azure SQL Database] ダイアログ

作成が完了すると、ダイアログが自動的に閉じられ、 [Azure SQL Database の構成] ダイアログに再度フォーカスが移ります。After creation is completed the dialog is automatically closed and the Configure Azure SQL Database dialog gets focus again:

  • 作成したばかりの新しいインスタンスが自動的に選択されます。The new instance that was just created is automatically selected.
  • [次へ] を選択します。Select Next.

[Azure SQL Database の構成] ダイアログ

[Azure SQL Database の構成] ダイアログの次の手順で、以下を実行します。In the next step of the Configure Azure SQL Database dialog:

  • [データベース接続のユーザー名][データベース管理者のパスワード] フィールドを入力します。Enter the Database connection user name and Database connection password fields. これらは、アプリケーションが実行時にデータベースに接続するために使用する詳細です。These are the details your application will use to connect to the database at runtime. ベスト プラクティスとして、前の手順で使用した管理者ユーザー名とパスワードと同じ詳細を使用しないようにすることをお勧めします。Best practice is to avoid using the same details as the admin username & password used in the previous step.
  • [完了] を選択します。Select Finish.

[Azure SQL Database の構成] ダイアログ、接続文字列の詳細

発行プロファイルの概要ページで [設定] を選択します。In the Publish Profile summary page select Settings:

発行プロファイルの概要ページ: 設定の編集

[発行] ダイアログの [設定] ページで次の手順を実行します。On the Settings page of the Publish dialog:

  • [データベース] を展開し、 [この接続文字列を実行時に使用する] をオンにします。Expand Databases and check Use this connection string at runtime.

  • [Entity Framework の移行] を展開し、 [発行時にこの移行を適用する] をオンにします。Expand Entity Framework Migrations and check Apply this migration on publish.

  • [保存] を選択します。Select Save. Visual Studio が [発行] ダイアログに戻ります。Visual Studio returns to the Publish dialog.

[発行] ダイアログ:[設定] パネル

[発行] をクリックします。Click Publish. Visual Studio が Azure にアプリを発行します。Visual Studio publishes your app to Azure. デプロイが完了すると、ブラウザーでアプリが開きます。When the deployment completes, the app is opened in a browser.

[発行] ダイアログ:[設定] パネル

アプリを更新するUpdate the app

  • Pages/Index.cshtml Razor ページを編集し、その内容を変更します。Edit the Pages/Index.cshtml Razor page and change its contents. たとえば、"Hello ASP.NET Core!" と表示されるように段落を修正できます。For example, you can modify the paragraph to say "Hello ASP.NET Core!":

    @page
    @model IndexModel
    @{
        ViewData["Title"] = "Home page";
    }
    
    <div class="text-center">
        <h1 class="display-4">Welcome</h1>
        <p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p>
        <p>Hello ASP.NET Core!</p>
    </div>
    
  • 発行プロファイルの概要ページから [発行] を選択します。Select Publish from the Publish Profile summary page again.

発行プロファイルの概要ページ

  • アプリが発行されたら、Azure に変更内容が反映されていることを確認します。After the app is published, verify the changes you made are available on Azure.

タスクの完了を確認します。

クリーンアップClean up

アプリのテストが完了したら、Azure Portal に移動し、アプリを削除します。When you have finished testing the app, go to the Azure portal and delete the app.

  • [リソース グループ] を選択し、作成したリソース グループを選択します。Select Resource groups, then select the resource group you created.

Azure Portal: サイドバー メニューの [リソース グループ]

  • [リソース グループ] ページで、 [削除] を選択します。In the Resource groups page, select Delete.

Azure Portal:[リソース グループ] ページ

  • リソース グループ名を入力し、 [削除] を選択します。Enter the name of the resource group and select Delete. このチュートリアルで作成されたアプリとその他すべてのリソースが Azure から削除されます。Your app and all other resources created in this tutorial are now deleted from Azure.

次の手順Next steps

その他の技術情報Additional resources