Publikowanie aplikacji ASP.NET Core na platformie Azure przy użyciu programu Visual Studio Code

Z tego samouczka dowiesz się, jak utworzyć aplikację ASP.Net Core MVC i wdrożyć ją w programie Visual Studio Code. W tym samouczku założono znajomość programu VS Code. Aby uzyskać więcej informacji, zobacz Wprowadzenie do programu VS Code. Ten samouczek będzie działać w środowiskach systemu Windows, macOS lub Linux. Pamiętaj, aby użyć poprawnej ścieżki oddzielającej znaki (\ vs /) dla środowiska.

Ważne

ASP.NET Core w wersji zapoznawczej za pomocą usługi aplikacja systemu Azure Service

ASP.NET Core w wersji zapoznawczej nie są domyślnie wdrażane w usłudze aplikacja systemu Azure Service. Aby hostować aplikację korzystającą z wersji zapoznawczej ASP.NET Core, zobacz Deploy ASP.NET Core preview release to aplikacja systemu Azure Service (Wdrażanie wersji zapoznawczej ASP.NET Core w usłudze aplikacja systemu Azure Service).

Aby rozwiązać problem z wdrażaniem usługi App Service, zobacz Rozwiązywanie problemów z programem ASP.NET Core w usłudze aplikacja systemu Azure i usługach IIS.

Wymagania wstępne

Tworzenie projektu ASP.NET Core MVC

  1. Otwórz zintegrowany terminal.

  2. Ustaw katalog roboczy (cd) na katalog, który będzie zawierać projekt.

  3. Uruchom następujące polecenia:

    dotnet new mvc -o MyMVCapp
    code -r MyMVCapp
    

    W przypadku poprzednich poleceń:

    • dotnet new mvc -o MyMVCapp
      • Tworzy nowy projekt MVC ASP.NET Core w folderze MyMVCapp .
    • code -r MyMVCapp
      • MyMVCapp.csproj Ładuje plik projektu w programie Visual Studio Code.
      • Program Visual Studio Code aktualizuje zintegrowany terminal do katalogu projektu.

Uwaga

Jeśli w oknie dialogowym Brakuje wymaganych zasobów do skompilowania i debugowania w aplikacji "MyMVCapp". Dodaj je?, wybierz pozycję Tak.

Nowy projekt ASP.NET Core MVC jest tworzony w folderze MyMVCapp o strukturze podobnej do następującej:

      appsettings.Development.json
      appsettings.json
<DIR> bin
<DIR> Controllers
<DIR> Models
      MyMVCapp.csproj
<DIR> obj
      Program.cs
<DIR> Properties
<DIR> Views
<DIR> wwwroot

Folder .vscode zostanie utworzony w strukturze projektu. Będzie zawierać pliki narzędzi ułatwiające kompilowanie i debugowanie aplikacji internetowej ASP.NET Core.

Testowanie projektu

Przed wdrożeniem aplikacji na platformie Azure upewnij się, że działa ona prawidłowo na komputerze lokalnym.

  1. Otwórz zintegrowany terminal (w razie potrzeby).

  2. Skonfiguruj zaufany certyfikat dewelopera HTTPS:

    • Ufaj certyfikatowi programistycznemu HTTPS, uruchamiając następujące polecenie:

      dotnet dev-certs https --trust
      

      Poprzednie polecenie nie działa w systemie Linux. Zapoznaj się z dokumentacją dystrybucji systemu Linux, aby ufać certyfikatowi.

      Poprzednie polecenie wyświetla następujące okno dialogowe, pod warunkiem, że certyfikat nie był wcześniej zaufany:

      Security warning dialog

    • Wybierz pozycję Tak, jeśli wyrażasz zgodę na zaufanie certyfikatowi programistycznemu.

      Aby uzyskać więcej informacji, zobacz Trust the ASP.NET Core HTTPS development certificate (Ufaj certyfikatowi programistycznemu ASP.NET Core HTTPS).

    Aby uzyskać informacje na temat zaufania przeglądarce Firefox, zobacz Błąd certyfikatu przeglądarki Firefox SEC_ERROR_INADEQUATE_KEY_USAGE.

  3. Uruchom następujące polecenie:

    dotnet run
    

    Poprzednie polecenie:

    • Uruchamia Kestrelwbudowany serwer internetowy platformy ASP.NET Core.
    • Wyświetla adres URL do testowania aplikacji internetowej, takiej jak http://localhost:<port>, gdzie <port> jest losowym numerem portu ustawionym podczas Properties\launchSettings.json tworzenia projektu.

    Dane wyjściowe zawierają komunikaty podobne do następujących, co wskazuje, że aplikacja jest uruchomiona i oczekuje na żądania:

    $ dotnet run
    Building...
    info: Microsoft.Hosting.Lifetime[14]
        Now listening on: https://localhost:7064
    info: Microsoft.Hosting.Lifetime[14]
        Now listening on: http://localhost:5119
    info: Microsoft.Hosting.Lifetime[0]
        Application started. Press Ctrl+C to shut down.
    info: Microsoft.Hosting.Lifetime[0]
        Hosting environment: Development
    info: Microsoft.Hosting.Lifetime[0]
        Content root path: D:\Src\MyMVCapp\
    
  4. Naciśnij klawisze Ctrl+, aby przetestować aplikację internetową w przeglądarce, kliknij adres URL HTTPS w danych wyjściowych. W powyższym przykładzie adres URL to https://localhost:7064.

  5. Naciśnij klawisze Ctrl+C w zintegrowanym terminalu, aby zamknąć aplikację internetową po jej przetestowaniu.

Lokalne generowanie pakietu wdrożeniowego

  1. W zintegrowanym terminalu użyj następującego polecenia, aby wygenerować Release pakiet w folderze znajdującym się w bin/Publishlokalizacji :

    dotnet publish -c Release -o ./bin/Publish
    

    W folderze bin zostanie utworzony nowy Publish podfolder. Ten folder zawiera pliki, które mają zostać wdrożone na platformie Azure.

    Publish folder structure

Publikowanie w usłudze Azure App Service

Korzystając z rozszerzenia usługi aplikacja systemu Azure dla programu Visual Studio Code, wykonaj poniższe kroki, aby opublikować witrynę internetową bezpośrednio w usłudze aplikacja systemu Azure.

Tworzenie nowego zasobu aplikacji internetowej platformy Azure

Jeśli nie masz istniejącego zasobu aplikacji internetowej platformy Azure do opublikowania, musisz go utworzyć.

  1. Na karcie Rozszerzenie platformy Azure w okienku ZASOBY rozwiń subskrypcję, której chcesz użyć.
  2. Kliknij prawym przyciskiem myszy pozycję App Services i wybierz polecenie Utwórz nową aplikację internetową....
  3. Postępuj zgodnie z monitami:
    1. Wprowadź unikatową nazwę aplikacji internetowej.
    2. Wybierz najnowsze stabilne środowisko uruchomieniowe platformy .NET (na przykład .NET 6 (LTS)). Nie wybieraj środowiska uruchomieniowego ASP.NET przeznaczonego dla aplikacji .NET Framework.
    3. Wybierz warstwę cenową. Bezpłatna (F1) jest akceptowalna w tym samouczku.

Publikowanie na platformie Azure

  1. Kliknij prawym przyciskiem myszy bin\Publish folder i wybierz Deploy to Web App... i postępuj zgodnie z monitami.

    1. Wybierz subskrypcję, w której znajduje się zasób aplikacji internetowej platformy Azure.
    2. Wybierz zasób aplikacji internetowej platformy Azure, do którego zostanie opublikowany.
    3. Wybierz pozycję Wdróż po wyświetleniu monitu za pomocą okna dialogowego potwierdzenia.
  2. Po zakończeniu wdrażania kliknij Browse Website , aby zweryfikować wdrożenie.

    Deployment succeeded message

    Po kliknięciu Browse Websitepozycji przejdź do niej przy użyciu przeglądarki domyślnej:

    New Web App successfully deployed

Napiwek

Powyższe kroki można powtórzyć, aby ponownie wdrożyć aplikację w tym samym zasobie aplikacji internetowej platformy Azure zgodnie z potrzebami. Pamiętaj o ponownym uruchomieniu dotnet publish przed wdrożeniem na platformie Azure.

Następne kroki

Dodatkowe zasoby