Publikowanie usługi w chmurze za pomocą programu Visual Studio

Uwaga

Ten artykuł dotyczy usług Azure Cloud Services (wersja klasyczna), która jest obecnie przestarzała dla nowych klientów i zostanie wycofana 31 sierpnia 2024 r. Istniejące usługi utworzone za pomocą tej technologii są nadal obsługiwane za pośrednictwem usług Azure Cloud Services (wsparcie dodatkowe). W przypadku nowego programowania zalecamy użycie nowszego typu usługi przeznaczonego do określonego celu, takiego jak aplikacja systemu Azure Service, Azure Functions lub Azure Container Apps. Aby uzyskać najnowszą listę dostępnych usług, zobacz Katalog produktów platformy Azure.

Program Visual Studio może publikować aplikację bezpośrednio na platformie Azure z obsługą środowisk przejściowych i produkcyjnych usługi w chmurze. Podczas publikowania wybierasz środowisko wdrażania i konto magazynu, które jest tymczasowo używane dla pakietu wdrożeniowego.

Podczas tworzenia i testowania aplikacji platformy Azure możesz użyć narzędzia Web Deploy, aby publikować zmiany przyrostowo dla ról internetowych. Po opublikowaniu aplikacji w środowisku wdrażania narzędzie Web Deploy umożliwia wdrażanie zmian bezpośrednio na maszynie wirtualnej, na której działa rola internetowa. Nie musisz pakować i publikować całej aplikacji platformy Azure za każdym razem, gdy chcesz zaktualizować rolę internetową, aby przetestować zmiany. Dzięki temu podejściu możesz mieć zmiany roli internetowej dostępne w chmurze do testowania bez oczekiwania na opublikowanie aplikacji w środowisku wdrażania.

Użyj następujących procedur, aby opublikować aplikację platformy Azure i zaktualizować rolę internetową przy użyciu narzędzia Web Deploy:

  • Publikowanie lub pakowanie aplikacji platformy Azure z poziomu programu Visual Studio
  • Aktualizowanie roli sieci Web w ramach cyklu programowania i testowania

Wymagania wstępne

Publikowanie lub pakowanie aplikacji platformy Azure z poziomu programu Visual Studio

Podczas publikowania aplikacji platformy Azure można wykonać jedno z następujących zadań:

  • Utwórz pakiet usługi: możesz użyć tego pakietu i pliku konfiguracji usługi, aby opublikować aplikację w środowisku wdrażania w witrynie Azure Portal.

  • Publikowanie projektu platformy Azure z poziomu programu Visual Studio: aby opublikować aplikację bezpośrednio na platformie Azure, użyj Kreatora publikowania. Aby uzyskać informacje, zobacz Publikowanie kreatora aplikacja systemu Azure.

Aby utworzyć pakiet usługi z poziomu programu Visual Studio

  1. Gdy wszystko będzie gotowe do opublikowania aplikacji, otwórz Eksplorator rozwiązań, otwórz menu skrótów dla projektu platformy Azure zawierającego role, a następnie wybierz pozycję Publikuj.

  2. Aby utworzyć tylko pakiet usługi, wykonaj następujące kroki:

    1. W menu skrótów dla projektu platformy Azure wybierz pozycję Pakiet.

    2. W oknie dialogowym Pakiet aplikacja systemu Azure wybierz konfigurację usługi, dla której chcesz utworzyć pakiet, a następnie wybierz konfigurację kompilacji.

    3. (Opcjonalnie) Aby włączyć pulpit zdalny dla usługi w chmurze po jej opublikowaniu, wybierz pozycję Włącz pulpit zdalny dla wszystkich ról, a następnie wybierz Ustawienia, aby skonfigurować poświadczenia pulpitu zdalnego. Aby uzyskać więcej informacji, zobacz Włączanie Połączenie pulpitu zdalnego dla roli w usługach Azure Cloud Services przy użyciu programu Visual Studio.

      Jeśli chcesz debugować usługę w chmurze po jej opublikowaniu, włącz zdalne debugowanie, wybierając pozycję Włącz debuger zdalny dla wszystkich ról.

    4. Aby utworzyć pakiet, wybierz link Pakiet .

      Eksplorator plików pokazuje lokalizację pliku nowo utworzonego pakietu. Możesz skopiować tę lokalizację, aby można było jej używać w witrynie Azure Portal.

    5. Aby opublikować ten pakiet w środowisku wdrażania, należy użyć tej lokalizacji jako lokalizacji pakietu podczas tworzenia usługi w chmurze i wdrażania tego pakietu w środowisku za pomocą witryny Azure Portal.

  3. (Opcjonalnie) Aby anulować proces wdrażania, w menu skrótów dla elementu wiersza w dzienniku aktywności wybierz pozycję Anuluj i usuń. To polecenie zatrzymuje proces wdrażania i usuwa środowisko wdrażania z platformy Azure. Aby usunąć środowisko po wdrożeniu, użyj witryny Azure Portal.

Aktualizowanie roli sieci Web w ramach cyklu programowania i testowania

Jeśli infrastruktura zaplecza aplikacji jest stabilna, ale role internetowe wymagają częstszego aktualizowania, możesz użyć narzędzia Web Deploy, aby zaktualizować tylko rolę internetową w projekcie. Narzędzie Web Deploy jest przydatne, gdy nie chcesz ponownie kompilować i ponownie wdrażać ról procesu roboczego zaplecza lub jeśli masz wiele ról sieci Web i chcesz zaktualizować tylko jedną z ról sieci Web.

Wymagania dotyczące korzystania z narzędzia Web Deploy

  • Tylko w celach programistycznych i testowych: zmiany są wprowadzane bezpośrednio do maszyny wirtualnej, na której działa rola sieci Web. Jeśli ta maszyna wirtualna musi zostać odzyskana, zmiany zostaną utracone, ponieważ oryginalny opublikowany pakiet zostanie użyty do ponownego utworzenia maszyny wirtualnej dla roli. Opublikuj ponownie aplikację, aby uzyskać najnowsze zmiany roli sieci Web.

  • Można aktualizować tylko role sieci Web: nie można aktualizować ról procesów roboczych. Ponadto nie można zaktualizować elementu RoleEntryPoint w pliku web role.cs.

  • Może obsługiwać tylko jedno wystąpienie roli sieci Web: nie można mieć wielu wystąpień żadnej roli sieci Web w środowisku wdrażania. Jednak wiele ról sieci Web z jednym wystąpieniem jest obsługiwanych.

  • Włącz połączenia pulpitu zdalnego: to wymaganie umożliwia usłudze Web Deploy używanie użytkownika i hasła do nawiązywania połączenia z maszyną wirtualną w celu wdrożenia zmian na serwerze z uruchomionymi usługami Internet Information Services (IIS). Ponadto może być konieczne nawiązanie połączenia z maszyną wirtualną w celu dodania zaufanego certyfikatu do usług IIS na tej maszynie wirtualnej. (Ten certyfikat gwarantuje, że połączenie zdalne dla usług IIS używanych przez usługę Web Deploy jest bezpieczne).

Poniższa procedura zakłada, że używasz Kreatora publikowania aplikacja systemu Azure.

Włączanie narzędzia Web Deploy podczas publikowania aplikacji

  1. Aby włączyć opcję Włącz usługę Web Deploy dla wszystkich ról sieci Web, należy najpierw skonfigurować połączenia pulpitu zdalnego. Wybierz pozycję Włącz pulpit zdalny dla wszystkich ról, a następnie podaj poświadczenia używane do zdalnego łączenia się zdalnego w wyświetlonym polu Konfiguracja pulpitu zdalnego. Zobacz Włączanie Połączenie pulpitu zdalnego dla roli w usługach Azure Cloud Services przy użyciu programu Visual Studio.

  2. Aby włączyć funkcję Web Deploy dla wszystkich ról sieci Web w aplikacji, wybierz pozycję Włącz wdrażanie w Sieci Web dla wszystkich ról sieci Web.

    Zostanie wyświetlony żółty trójkąt ostrzegawczy. Narzędzie Web Deploy domyślnie używa niezaufanego certyfikatu z podpisem własnym, który nie jest zalecany do przekazywania poufnych danych. Jeśli chcesz zabezpieczyć ten proces dla danych poufnych, możesz dodać certyfikat SSL, który ma być używany na potrzeby połączeń web deploy. Ten certyfikat musi być zaufanym certyfikatem. Aby uzyskać więcej informacji, zobacz Make web deploy secure (Zabezpieczanie wdrażania internetowego).

  3. Wybierz pozycję Dalej , aby wyświetlić ekran Podsumowanie , a następnie wybierz pozycję Publikuj , aby wdrożyć usługę w chmurze.

    Opublikowano usługę w chmurze. Utworzona maszyna wirtualna ma włączone połączenia zdalne dla usług IIS, dzięki czemu narzędzie Web Deploy może służyć do aktualizowania ról sieci Web bez ich ponownego publikowania.

    Uwaga

    Jeśli masz więcej niż jedno wystąpienie skonfigurowane dla roli sieci Web, zostanie wyświetlony komunikat ostrzegawczy z informacją, że każda rola sieci Web jest ograniczona do jednego wystąpienia tylko w pakiecie utworzonym do publikowania aplikacji. Naciśnij OK, aby kontynuować. Zgodnie z opisem w sekcji Wymagania można mieć więcej niż jedną rolę sieci Web, ale tylko jedno wystąpienie każdej roli.

Aktualizowanie roli sieci Web przy użyciu narzędzia Web Deploy

  1. Aby użyć narzędzia Web Deploy, wprowadź zmiany kodu w projekcie dla dowolnych ról sieci Web w programie Visual Studio, które chcesz opublikować, a następnie kliknij prawym przyciskiem myszy ten węzeł projektu w rozwiązaniu i wskaż polecenie Publikuj. Zostanie wyświetlone okno dialogowe Publikowanie w Sieci Web .

  2. (Opcjonalnie) Jeśli dodano zaufany certyfikat SSL do użycia dla połączeń zdalnych dla usług IIS, możesz wyczyścić pole wyboru Zezwalaj na niezaufany certyfikat . Aby uzyskać informacje na temat sposobu dodawania certyfikatu w celu zapewnienia bezpieczeństwa funkcji Web Deploy, zobacz sekcję Aby zabezpieczyć wdrożenie internetowe w dalszej części tego artykułu.

  3. Aby użyć narzędzia Web Deploy, mechanizm publikowania wymaga nazwy użytkownika i hasła skonfigurowanego dla połączenia pulpitu zdalnego po pierwszym opublikowaniu pakietu.

    1. W polu Nazwa użytkownika wprowadź nazwę użytkownika.

    2. W polu Hasło wprowadź hasło.

    3. (Opcjonalnie) Jeśli chcesz zapisać to hasło w tym profilu, wybierz pozycję Zapisz hasło.

  4. Aby opublikować zmiany w roli sieci Web, wybierz pozycję Publikuj.

    W wierszu stanu zostanie wyświetlona wartość Publish started (Rozpoczęto publikowanie). Po zakończeniu publikowania zostanie wyświetlony komunikat Publikowanie zakończyło się pomyślnie . Zmiany zostały teraz wdrożone w roli sieci Web na maszynie wirtualnej. Teraz możesz uruchomić aplikację platformy Azure w środowisku platformy Azure, aby przetestować zmiany.

Zabezpieczanie wdrożenia internetowego

  1. Narzędzie Web Deploy domyślnie używa niezaufanego certyfikatu z podpisem własnym, który nie jest zalecany do przekazywania poufnych danych. Jeśli chcesz zabezpieczyć ten proces dla danych poufnych, możesz dodać certyfikat SSL, który ma być używany na potrzeby połączeń web deploy. Ten certyfikat musi być zaufanym certyfikatem uzyskanym od urzędu certyfikacji.

    Aby zabezpieczyć usługę Web Deploy dla każdej maszyny wirtualnej dla każdej z ról sieci Web, należy przekazać zaufany certyfikat, który ma być używany do wdrażania w Internecie w witrynie Azure Portal. Ten certyfikat zapewnia dodanie certyfikatu do maszyny wirtualnej utworzonej dla roli sieci Web podczas publikowania aplikacji.

  2. Aby dodać zaufany certyfikat SSL do usług IIS do użycia na potrzeby połączeń zdalnych, wykonaj następujące kroki:

    1. Aby nawiązać połączenie z maszyną wirtualną z uruchomioną rolą internetową, wybierz wystąpienie roli sieci Web w Eksploratorze chmury lub Eksploratorze serwera, a następnie wybierz Połączenie za pomocą polecenia Pulpit zdalny. Aby uzyskać szczegółowe instrukcje dotyczące nawiązywania połączenia z maszyną wirtualną, zobacz Włączanie Połączenie pulpitu zdalnego dla roli w usługach Azure Cloud Services przy użyciu programu Visual Studio. W przeglądarce zostanie wyświetlony monit o pobranie .rdp pliku.

    2. Aby dodać certyfikat SSL, otwórz usługę zarządzania w Menedżerze usług IIS. W Menedżerze usług IIS włącz protokół SSL, otwierając link Powiązania w okienku Akcja . Zostanie wyświetlone okno dialogowe Dodawanie powiązania witryny. Wybierz pozycję Dodaj, a następnie wybierz pozycję HTTPS na liście rozwijanej Typ . Na liście certyfikatów SSL wybierz certyfikat SSL podpisany przez urząd certyfikacji i przekazany do witryny Azure Portal. Aby uzyskać więcej informacji, zobacz Konfigurowanie Połączenie ion Ustawienia dla usługi zarządzania.

      Uwaga

      W przypadku dodania zaufanego certyfikatu SSL żółty trójkąt ostrzegawczy nie będzie już wyświetlany w Kreatorze publikowania.

Dołączanie plików do pakietu usługi

Może być konieczne dołączenie określonych plików do pakietu usługi, aby były dostępne na maszynie wirtualnej utworzonej dla roli. Możesz na przykład dodać plik .exe lub plik .msi , który jest używany przez skrypt uruchamiania do pakietu usługi. Może też być konieczne dodanie zestawu wymaganego przez projekt roli sieci Web lub roli procesu roboczego. Aby uwzględnić pliki, należy je dodać do rozwiązania dla aplikacji platformy Azure.

  1. Aby dodać zestaw do pakietu usługi, wykonaj następujące kroki:

    1. W Eksplorator rozwiązań otwórz węzeł projektu dla projektu, dla którego brakuje przywołytowanego zestawu.

    2. Aby dodać zestaw do projektu, otwórz menu skrótów dla folderu Odwołania, a następnie wybierz pozycję Dodaj odwołanie. Zostanie wyświetlone okno dialogowe Dodawanie odwołania.

    3. Wybierz odwołanie, które chcesz dodać, a następnie wybierz przycisk OK. Odwołanie jest dodawane do listy w folderze Odwołania .

    4. Otwórz menu skrótów dla dodanego zestawu i wybierz pozycję Właściwości. Zostanie wyświetlone okno Właściwości .

      Aby uwzględnić ten zestaw w pakiecie usługi, na liście Kopiuj lokalnie wybierz pozycję Prawda.

  2. W Eksplorator rozwiązań otwórz węzeł projektu dla projektu, w ramach którego brakuje przywołytowanego zestawu.

  3. Aby dodać zestaw do projektu, otwórz menu skrótów dla folderu Odwołania, a następnie wybierz pozycję Dodaj odwołanie. Zostanie wyświetlone okno dialogowe Dodawanie odwołania .

  4. Wybierz odwołanie, które chcesz dodać, a następnie wybierz przycisk OK .

    Odwołanie jest dodawane do listy w folderze Odwołania .

  5. Otwórz menu skrótów dla dodanego zestawu i wybierz pozycję Właściwości. Zostanie wyświetlona okno Właściwości.

  6. Aby uwzględnić ten zestaw w pakiecie usługi, na liście Kopiuj lokalnie wybierz pozycję Prawda.

  7. Aby uwzględnić pliki w pakiecie usługi, które zostały dodane do projektu roli sieci Web, otwórz menu skrótów dla pliku, a następnie wybierz pozycję Właściwości. W oknie Właściwości wybierz pozycję Zawartość z listy Akcja kompilacji.

  8. Aby uwzględnić pliki w pakiecie usługi, który został dodany do projektu roli procesu roboczego, otwórz menu skrótów dla pliku, a następnie wybierz pozycję Właściwości. W oknie Właściwości wybierz pozycję Kopiuj, jeśli nowsza z listy Kopiuj do katalogu wyjściowego.

Aby dowiedzieć się więcej na temat publikowania na platformie Azure z poziomu programu Visual Studio, zobacz Publikowanie aplikacja systemu Azure Kreator.