Szybki start: wdrażanie aplikacji internetowej ASP.NET
Z tego przewodnika Szybki start dowiesz się, jak utworzyć i wdrożyć pierwszą aplikację internetową ASP.NET w Azure App Service. App Service obsługuje różne wersje aplikacji .NET i zapewnia wysoce skalowalną, samonastosowywną usługę hostingu internetowego. ASP.NET aplikacje internetowe są międzyplatformowe i mogą być hostowane w systemie Linux lub Windows. Po zakończeniu będziesz mieć grupę zasobów platformy Azure składającą się z planu hostingu App Service i App Service z wdrożonym aplikacją internetową.
Alternatywnie możesz wdrożyć aplikację internetową ASP.NET w ramach kontenera systemu Windows lub Linux w App Service.
Wymagania wstępne
- Konto platformy Azure z aktywną subskrypcją. Utwórz bezpłatne konto.
- Program Visual Studio 2022 z pakietem roboczym tworzenia aplikacji ASP.NET i aplikacji internetowych.
Jeśli masz już zainstalowany program Visual Studio 2022:
- Zainstaluj najnowsze aktualizacje w programie Visual Studio, wybierając pozycję Sprawdzanie pomocy>pod kątem Aktualizacje.
- Dodaj obciążenie, wybierając pozycję NarzędziaPobierz narzędzia >i funkcje.
- Konto platformy Azure z aktywną subskrypcją. Utwórz bezpłatne konto.
- Program Visual Studio Code
- Rozszerzenie Azure Tools .
- Najnowszy zestaw .NET 7.0 SDK.
- Konto platformy Azure z aktywną subskrypcją. Utwórz bezpłatne konto.
- Interfejs wiersza polecenia platformy Azure.
- Najnowszy zestaw .NET 7.0 SDK.
- Konto platformy Azure z aktywną subskrypcją. Utwórz bezpłatne konto.
- Azure PowerShell.
- Najnowszy zestaw .NET 7.0 SDK.
- Konto platformy Azure z aktywną subskrypcją. Utwórz bezpłatne konto.
- Konto usługi GitHub Utwórz bezpłatne konto.
1. Tworzenie aplikacji internetowej ASP.NET
Otwórz program Visual Studio, a następnie wybierz pozycję Utwórz nowy projekt.
W obszarze Tworzenie nowego projektu znajdź i wybierz pozycję ASP.NET Core Aplikacja internetowa, a następnie wybierz pozycję Dalej.
W obszarze Konfigurowanie nowego projektu nadaj aplikacji nazwę MyFirstAzureWebApp, a następnie wybierz pozycję Dalej.
Wybierz pozycję .NET 7.0 (obsługa terminów standardowych).
Upewnij się, że dla ustawienia Typ uwierzytelniania ustawiono wartość Brak. Wybierz przycisk Utwórz.
Z menu programu Visual Studio wybierz pozycję Rozpocznij debugowanie>bez debugowania , aby uruchomić aplikację internetową lokalnie. Jeśli zostanie wyświetlony komunikat z prośbą o zaufanie certyfikatowi z podpisem własnym, wybierz pozycję Tak.
Otwórz okno terminalu na maszynie w katalogu roboczym. Utwórz nową aplikację internetową platformy .NET przy użyciu
dotnet new webapp
polecenia , a następnie zmień katalogi na nowo utworzoną aplikację.dotnet new webapp -n MyFirstAzureWebApp --framework net7.0 cd MyFirstAzureWebApp
W tej samej sesji terminalu uruchom aplikację lokalnie przy użyciu
dotnet run
polecenia .dotnet run --urls=https://localhost:5001/
Otwórz przeglądarkę internetową i przejdź do aplikacji pod adresem
https://localhost:5001
.Na stronie zostanie wyświetlony szablon ASP.NET Core 7.0 aplikacji internetowej.
W tym kroku utworzysz rozwidlenie projektu demonstracyjnego do wdrożenia.
- Przejdź do przykładowej aplikacji .NET 7.0.
- Wybierz przycisk Rozwidlenie w prawym górnym rogu na stronie GitHub.
- Wybierz pozycję Właściciel i pozostaw domyślną nazwę repozytorium.
- Wybierz pozycję Utwórz rozwidlenie.
2. Publikowanie aplikacji internetowej
Aby opublikować aplikację internetową, musisz najpierw utworzyć i skonfigurować nowy App Service, w którym można opublikować aplikację.
W ramach konfigurowania App Service tworzone są następujące elementy:
- Nowa grupa zasobów zawierająca wszystkie zasoby platformy Azure dla usługi.
- Nowy plan hostingu określający lokalizację, rozmiar i funkcje farmy serwerów internetowych hostujących aplikację.
Wykonaj następujące kroki, aby utworzyć zasoby App Service i opublikować projekt:
W Eksplorator rozwiązań kliknij prawym przyciskiem myszy projekt MyFirstAzureWebApp i wybierz pozycję Publikuj.
W obszarze Publikowanie wybierz pozycję Azure , a następnie pozycję Dalej.
Wybierz określony element docelowy, Azure App Service (Linux) lub Azure App Service (Windows). Następnie wybierz pozycję Dalej.
Ważne
W przypadku określania wartości docelowej ASP.NET Framework 4.8 użyj Azure App Service (Windows).
Dostępne opcje zależą od tego, czy użytkownik jest już zalogowany na platformie Azure i czy masz konto programu Visual Studio połączone z kontem platformy Azure. Wybierz pozycję Dodaj konto lub Zaloguj się , aby zalogować się do subskrypcji platformy Azure. Jeśli już się zalogowałeś, wybierz żądane konto.
Po prawej stronie App Service wystąpień wybierz pozycję +.
W polu Subskrypcja zaakceptuj listę subskrypcji lub wybierz nową z listy rozwijanej.
W obszarze Grupa zasobów wybierz pozycję Nowy. W polu Nazwa nowej grupy zasobów wprowadź myResourceGroup i wybierz przycisk OK.
W obszarze Plan hostingu wybierz pozycję Nowy.
W oknie dialogowym Plan hostingu: Utwórz nowy wprowadź wartości określone w poniższej tabeli:
Ustawienie Sugerowana wartość Opis Plan hostingu MyFirstAzureWebAppPlan Nazwa planu usługi App Service. Lokalizacja West Europe Centrum danych, w którym hostowana jest aplikacja internetowa. Rozmiar Bezpłatna Warstwa cenowa określa funkcje hostowania. W polu Nazwa wprowadź unikatową nazwę aplikacji, która zawiera tylko prawidłowe znaki, to
a-z
,A-Z
,0-9
i-
. Możesz zaakceptować automatycznie wygenerowaną unikatową nazwę. Adres URL aplikacji internetowej tohttp://<app-name>.azurewebsites.net
, gdzie<app-name>
to nazwa aplikacji.Wybierz pozycję Utwórz , aby utworzyć zasoby platformy Azure.
Po zakończeniu pracy kreatora zasoby platformy Azure zostaną utworzone i wszystko będzie gotowe do opublikowania projektu ASP.NET Core.
W oknie dialogowym Publikowanie upewnij się, że została wybrana nowa aplikacja App Service, a następnie wybierz pozycję Zakończ, a następnie wybierz pozycję Zamknij. Program Visual Studio tworzy profil publikowania dla wybranej aplikacji App Service.
Na stronie Publikowanie wybierz pozycję Publikuj. Jeśli zostanie wyświetlony komunikat ostrzegawczy, wybierz pozycję Kontynuuj.
Program Visual Studio kompiluje, pakuje i publikuje aplikację na platformie Azure, a następnie uruchamia aplikację w domyślnej przeglądarce.
Na stronie zostanie wyświetlona aplikacja internetowa ASP.NET Core 7.0.
W Visual Studio Code otwórz paletę poleceń, wybierając pozycję Wyświetl>paletę poleceń.
Wyszukaj i wybierz pozycję "Azure App Service: Utwórz nową aplikację internetową (zaawansowane)".
Odpowiedz na monity w następujący sposób:
- Jeśli zostanie wyświetlony monit, zaloguj się do konta platformy Azure.
- Wybierz swoją subskrypcję.
- Wybierz pozycję Utwórz nową aplikację internetową... Zaawansowane.
- W polu Wprowadź globalnie unikatową nazwę użyj nazwy unikatowej dla całej platformy Azure (prawidłowe znaki to
a-z
,0-9
i-
). Dobrym wzorcem jest użycie kombinacji nazwy firmy i identyfikatora aplikacji. - Wybierz pozycję Utwórz nową grupę zasobów i podaj nazwę, taką jak
myResourceGroup
. - Po wyświetleniu monitu o wybranie stosu środowiska uruchomieniowego wybierz pozycję .NET 7 (STS).
- Wybierz system operacyjny (Windows lub Linux).
- Wybierz lokalizację w pobliżu siebie.
- Wybierz pozycję Utwórz nowy plan App Service, podaj nazwę i wybierz warstwę cenowąF1 Bezpłatna.
- Wybierz pozycję Pomiń teraz dla zasobu usługi Application Insights.
- Po wyświetleniu monitu kliknij pozycję Wdróż.
- Wybierz pozycję MyFirstAzureWebApp jako folder do wdrożenia.
- Po wyświetleniu monitu wybierz pozycję Dodaj konfigurację .
W oknie podręcznym Zawsze wdróż obszar roboczy "MyFirstAzureWebApp" na <nazwę> aplikacji", wybierz pozycję Tak, aby Visual Studio Code jest wdrażana w tej samej aplikacji App Service za każdym razem, gdy jesteś w tym obszarze roboczym.
Po zakończeniu publikowania wybierz pozycję Przeglądaj witrynę internetową w powiadomieniu i wybierz pozycję Otwórz po wyświetleniu monitu.
Na stronie zostanie wyświetlona aplikacja internetowa ASP.NET Core 7.0.
Zaloguj się do konta platformy Azure przy użyciu
az login
polecenia i w wierszu polecenia:az login
Wdróż kod w lokalnym katalogu MyFirstAzureWebApp za pomocą
az webapp up
polecenia :az webapp up --sku F1 --name <app-name> --os-type <os>
az
Jeśli polecenie nie jest rozpoznawane, upewnij się, że masz zainstalowany interfejs wiersza polecenia platformy Azure zgodnie z opisem w sekcji Wymagania wstępne.- Zastąp
<app-name>
ciąg nazwą unikatową dla całej platformy Azure (prawidłowe znaki toa-z
,0-9
i-
). Dobrym wzorcem jest użycie kombinacji nazwy firmy i identyfikatora aplikacji. - Argument
--sku F1
tworzy aplikację internetową w warstwie cenowejBezpłatna. Pomiń ten argument, aby użyć szybszej warstwy Premium, która powoduje naliczanie godzinowych kosztów. - Zastąp ciąg
<os>
ciągiem lublinux
windows
. - Opcjonalnie możesz uwzględnić argument
--location <location-name>
, w którym<location-name>
jest dostępny region świadczenia usługi Azure. Listę dozwolonych regionów dla konta platformy Azure można pobrać, uruchamiającaz account list-locations
polecenie .
Wykonanie polecenia może potrwać kilka minut. Gdy jest uruchomiona, polecenie udostępnia komunikaty dotyczące tworzenia grupy zasobów, planu App Service i aplikacji hostingu, konfigurowania rejestrowania, a następnie wykonywania wdrożenia zip. Następnie zostanie wyświetlony komunikat z adresem URL aplikacji:
You can launch the app at http://<app-name>.azurewebsites.net
Otwórz przeglądarkę internetową i przejdź do adresu URL:
Na stronie zostanie wyświetlona aplikacja internetowa ASP.NET Core 7.0.
Uwaga
Azure PowerShell zaleca się tworzenie aplikacji na platformie hostingu systemu Windows. Aby utworzyć aplikacje w systemie Linux, użyj innego narzędzia, takiego jak interfejs wiersza polecenia platformy Azure.
Zaloguj się do konta platformy Azure przy użyciu
Connect-AzAccount
polecenia i w wierszu polecenia:Connect-AzAccount
Utwórz nową aplikację przy użyciu polecenia New-AzWebApp :
New-AzWebApp -Name <app-name> -Location westeurope
- Zastąp
<app-name>
ciąg nazwą unikatową dla całej platformy Azure (prawidłowe znaki toa-z
,0-9
i-
). Dobrym wzorcem jest kombinacja nazwy firmy i identyfikatora aplikacji. - Opcjonalnie możesz uwzględnić parametr
-Location <location-name>
, w którym<location-name>
jest dostępny region świadczenia usługi Azure. Listę dozwolonych regionów dla konta platformy Azure można pobrać, uruchamiającGet-AzLocation
polecenie .
Wykonanie polecenia może potrwać kilka minut. Gdy jest uruchomiona, polecenie tworzy grupę zasobów, plan App Service i zasób App Service.
- Zastąp
Z folderu głównego aplikacji przygotuj lokalną aplikację MyFirstAzureWebApp do wdrożenia przy użyciu
dotnet publish
polecenia :dotnet publish --configuration Release
Przejdź do katalogu wydania i utwórz plik zip z zawartości:
cd bin\Release\net7.0\publish Compress-Archive -Path * -DestinationPath deploy.zip
Opublikuj plik zip w aplikacji platformy Azure przy użyciu polecenia Publish-AzWebApp :
Publish-AzWebApp -ResourceGroupName myResourceGroup -Name <app-name> -ArchivePath (Get-Item .\deploy.zip).FullName -Force
Uwaga
-ArchivePath
wymaga pełnej ścieżki pliku zip.Otwórz przeglądarkę internetową i przejdź do adresu URL:
Na stronie zostanie wyświetlona aplikacja internetowa ASP.NET Core 7.0.
Wpisz app services w wyszukiwaniu. W obszarze Usługi wybierz pozycję App Services.
Na stronie App Services wybierz pozycję + Utwórz.
Na karcie Podstawy :
- W obszarze Grupa zasobów wybierz pozycję Utwórz nową. Wpisz nazwę myResourceGroup.
- W obszarze Nazwa wpisz globalnie unikatową nazwę aplikacji internetowej.
- W obszarze Publikowanie wybierz pozycję Kod.
- W obszarze Stos środowiska uruchomieniowego wybierz pozycję .NET 7 (STS).
- Wybierz system operacyjny i region , z którego chcesz obsługiwać aplikację.
- W obszarze App Service Plan wybierz pozycję Utwórz nowy i wpisz myAppServicePlan jako nazwę.
- W obszarze Plan cenowy wybierz pozycję Bezpłatna F1.
Wybierz przycisk Dalej: Wdrożenie > w dolnej części strony.
Na karcie Wdrożenie w obszarze GitHub Actions ustawienia upewnij się, że ciągłe wdrażanie ma wartość Włącz.
W obszarze GitHub Actions szczegóły uwierzytelnij się przy użyciu konta usługi GitHub i wybierz następujące opcje:
- W obszarze Organizacja wybierz organizację, w której utworzono rozwidlenie projektu demonstracyjnego.
- W polu Repozytorium wybierz projekt dotnetcore-docs-hello-world .
- W polu Gałąź wybierz gałąź główną.
Wybierz przycisk Przejrzyj i utwórz w dolnej części strony.
Po uruchomieniu walidacji wybierz przycisk Utwórz w dolnej części strony.
Po zakończeniu wdrażania wybierz pozycję Przejdź do zasobu.
Przejdź do wdrożonej aplikacji w przeglądarce internetowej pod adresem URL
http://<app-name>.azurewebsites.net
.
3. Aktualizowanie aplikacji i ponowne wdrażanie
Wykonaj następujące kroki, aby zaktualizować i ponownie wdrożyć aplikację internetową:
W Eksplorator rozwiązań w projekcie otwórz plik Index.cshtml.
Zastąp pierwszy
<div>
element następującym kodem:<div class="jumbotron"> <h1>.NET 💜 Azure</h1> <p class="lead">Example .NET app to Azure App Service.</p> </div>
Zapisz zmiany.
Aby ponownie wdrożyć na platformie Azure, kliknij prawym przyciskiem myszy projekt MyFirstAzureWebApp w Eksplorator rozwiązań i wybierz polecenie Publikuj.
Na stronie Podsumowanie publikowania wybierz pozycję Publikuj.
Po zakończeniu publikowania program Visual Studio otworzy w przeglądarce adres URL aplikacji internetowej.
Na stronie zostanie wyświetlona zaktualizowana aplikacja internetowa ASP.NET Core 7.0.
Otwórz plik Index.cshtml.
Zastąp pierwszy
<div>
element następującym kodem:<div class="jumbotron"> <h1>.NET 💜 Azure</h1> <p class="lead">Example .NET app to Azure App Service.</p> </div>
Zapisz zmiany.
W Visual Studio Code otwórz paletę poleceńCtrl+Shift+P.
Wyszukaj i wybierz pozycję "Azure App Service: Wdróż w aplikacji internetowej".
Po wyświetleniu monitu wybierz pozycję Wdróż .
Po zakończeniu publikowania wybierz pozycję Przeglądaj witrynę internetową w powiadomieniu i wybierz pozycję Otwórz po wyświetleniu monitu.
Na stronie zostanie wyświetlona zaktualizowana aplikacja internetowa ASP.NET Core 7.0.
W katalogu lokalnym otwórz plik Index.cshtml . Zastąp pierwszy <div>
element:
<div class="jumbotron">
<h1>.NET 💜 Azure</h1>
<p class="lead">Example .NET app to Azure App Service.</p>
</div>
Zapisz zmiany, a następnie ponownie wdróż aplikację przy użyciu az webapp up
polecenia ponownie:
ASP.NET Core 7.0 jest międzyplatformowa, na podstawie poprzedniego wdrożenia zastąp <os>
elementem linux
lub windows
.
az webapp up --os-type <os>
To polecenie używa wartości buforowanych lokalnie w pliku .azure/config, w tym nazwy aplikacji, grupy zasobów i planu App Service.
Po zakończeniu wdrażania wróć do okna przeglądarki, które zostało otwarte w kroku Przeglądaj w aplikacji i naciśnij pozycję Odśwież.
Na stronie zostanie wyświetlona zaktualizowana aplikacja internetowa ASP.NET Core 7.0.
W katalogu lokalnym otwórz plik Index.cshtml . Zastąp pierwszy
<div>
element:<div class="jumbotron"> <h1>.NET 💜 Azure</h1> <p class="lead">Example .NET app to Azure App Service.</p> </div>
Z folderu głównego aplikacji przygotuj lokalną aplikację MyFirstAzureWebApp do wdrożenia przy użyciu
dotnet publish
polecenia :dotnet publish --configuration Release
Przejdź do katalogu wydania i utwórz plik zip z zawartości:
cd bin\Release\net7.0\publish Compress-Archive -Path * -DestinationPath deploy.zip
Opublikuj plik zip w aplikacji platformy Azure przy użyciu polecenia Publish-AzWebApp :
Publish-AzWebApp -ResourceGroupName myResourceGroup -Name <app-name> -ArchivePath (Get-Item .\deploy.zip).FullName -Force
Uwaga
-ArchivePath
wymaga pełnej ścieżki pliku zip.Po zakończeniu wdrażania wróć do okna przeglądarki, które zostało otwarte w kroku Przeglądaj w aplikacji i naciśnij pozycję Odśwież.
Na stronie zostanie wyświetlona zaktualizowana aplikacja internetowa ASP.NET Core 7.0.
Przejdź do rozwidlenia usługi GitHub przykładowego kodu.
Na stronie repozytorium naciśnij klawisz
.
, aby uruchomić Visual Studio Code w przeglądarce.Uwaga
Adres URL zmieni się z GitHub.com na GitHub.dev. Ta funkcja działa tylko z repozytoriami, które mają pliki. Nie działa to w przypadku pustych repozytoriów.
Otwórz plik Index.cshtml.
Plik Index.cshtml znajduje się w folderze
Pages
.Zastąp pierwszy
<div>
element następującym kodem:<div class="jumbotron"> <h1>.NET 💜 Azure</h1> <p class="lead">Example .NET app to Azure App Service.</p> </div>
Zapisz zmiany.
Z menu Kontrola źródła wybierz przycisk Zmiany etapu , aby przygotować zmianę.
Wprowadź komunikat zatwierdzenia, taki jak
We love Azure
. Następnie wybierz pozycję Commit and Push (Zatwierdź i wypchnij).Po zakończeniu wdrożenia wróć do okna przeglądarki otwartego w kroku przechodzenia do aplikacji, a następnie odśwież stronę.
Na stronie zostanie wyświetlona zaktualizowana aplikacja internetowa ASP.NET Core 7.0.
4. Zarządzanie aplikacją platformy Azure
Aby zarządzać aplikacją internetową, przejdź do Azure Portal i wyszukaj i wybierz pozycję App Services.
Na stronie App Services wybierz nazwę aplikacji internetowej.
Strona Przegląd aplikacji internetowej zawiera opcje zarządzania podstawowego, takie jak przeglądanie, zatrzymywanie, uruchamianie, ponowne uruchamianie i usuwanie. Menu po lewej stronie zawiera kolejne strony służące do konfigurowania aplikacji.
Czyszczenie zasobów
W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.
- W witrynie Azure Portal na stronie Przegląd aplikacji internetowej wybierz link myResourceGroup w obszarze Grupa zasobów.
- Na stronie grupy zasobów upewnij się, że zasoby na liście są tymi, które chcesz usunąć.
- Wybierz pozycję Usuń, wpisz ciąg myResourceGroup w polu tekstowym, a następnie wybierz opcję Usuń.
Czyszczenie zasobów
W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.
- W witrynie Azure Portal na stronie Przegląd aplikacji internetowej wybierz link myResourceGroup w obszarze Grupa zasobów.
- Na stronie grupy zasobów upewnij się, że zasoby na liście są tymi, które chcesz usunąć.
- Wybierz pozycję Usuń, wpisz ciąg myResourceGroup w polu tekstowym, a następnie wybierz opcję Usuń.
Czyszczenie zasobów
W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli te zasoby nie będą raczej potrzebne w przyszłości, usuń grupę zasobów, uruchamiając następujące polecenie w usłudze Cloud Shell:
az group delete --name myResourceGroup
Wykonanie tego polecenia może potrwać około minutę.
Czyszczenie zasobów
W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie spodziewasz się, że te zasoby będą potrzebne w przyszłości, usuń grupę zasobów, uruchamiając następujące polecenie programu PowerShell:
Remove-AzResourceGroup -Name myResourceGroup
Wykonanie tego polecenia może potrwać około minutę.
Czyszczenie zasobów
W poprzednich krokach utworzono zasoby platformy Azure w grupie zasobów. Jeśli nie będziesz już potrzebować tych zasobów w przyszłości, możesz je usunąć przez usunięcie grupy zasobów.
- W witrynie Azure Portal na stronie Przegląd aplikacji internetowej wybierz link myResourceGroup w obszarze Grupa zasobów.
- Na stronie grupy zasobów upewnij się, że zasoby na liście są tymi, które chcesz usunąć.
- Wybierz pozycję Usuń, wpisz ciąg myResourceGroup w polu tekstowym, a następnie wybierz opcję Usuń.
Następne kroki
Przejdź do następnego artykułu, aby dowiedzieć się, jak utworzyć aplikację platformy .NET Core i połączyć ją z SQL Database: