Hostowanie aplikacji w technologii Node.js w usłudze Azure Service Fabric

Przewodnik Szybki start ułatwia wdrożenie istniejącej aplikacji (w tym przykładzie w technologii Node.js) do klastra usługi Service Fabric działającego na platformie Azure.

Wymagania wstępne

Przed rozpoczęciem upewnij się, że skonfigurowaliśmy środowisko programistyczne, które obejmuje instalowanie zestawu SDK usługi Service Fabric i programu Visual Studio 2019 lub 2015.

Niezbędna jest również aplikacja Node.js do wdrożenia. Przewodnik Szybki Start używa prostej witryny sieci Web w technologii Node.js, którą można pobrać stąd. W następnym kroku po utworzeniu projektu wyodrębnij ten plik do swojego folderu <path-to-project>\ApplicationPackageRoot\<package-name>\Code\.

Jeśli nie masz subskrypcji platformy Azure, utwórz bezpłatne konto.

Tworzenie usługi

Uruchom program Visual Studio jako administrator.

Tworzenie projektu przy użyciu klawiszy CTRL+SHIFT+N

W oknie dialogowym Nowy projekt wybierz pozycję Aplikacja usługi Cloud > Service Fabric.

Nadaj aplikacji nazwę MyGuestApp i naciśnij pozycję Utwórz.

Ważne

W technologii Node.js można łatwo obejść limit systemu Windows 260 znaków dla ścieżek. Użyj krótkiej ścieżki dla samego projektu, takiej jak c:\code\svc1. Opcjonalnie możesz postępować zgodnie z tymi instrukcjami, aby włączyć długie ścieżki plików w Windows 10.

Okno dialogowe nowego projektu w programie Visual Studio

W następnym oknie dialogowym można utworzyć usługę Service Fabric dowolnego typu. Na potrzeby tego przewodnika Szybki start wybierz pozycję Wykonywalna gościa.

Nazwij usługę MyGuestService i ustaw opcje po prawej stronie na następujące wartości:

Ustawienie Wartość
Folder pakietu kodu <folder z aplikacją Node.js>
Zachowanie pakietu kodu Skopiuj zawartość folderu do projektu
Program node.exe
Argumenty server.js
Folder roboczy CodePackage

Naciśnij przycisk OK.

Okno dialogowe nowej usługi w programie Visual Studio

Program Visual Studio utworzy projekt aplikacji i projekt usługi aktora, a następnie wyświetli je w Eksploratorze rozwiązań.

Projekt aplikacji (MyGuestApp) nie zawiera bezpośrednio żadnego kodu. Projekt odwołuje się do zestawu projektów usług. Ponadto zawiera trzy inne typy zawartości:

  • Profile publikowania
    Preferencje narzędzi dla różnych środowisk.

  • Skrypty
    Skrypt programu PowerShell przeznaczony do wdrażania/uaktualniania aplikacji.

  • Definicja aplikacji
    Zawiera manifest aplikacji w ramach elementu ApplicationPackageRoot. Skojarzone pliki parametrów aplikacji znajdują się w ramach elementu ApplicationParameters, które definiują aplikację i umożliwiają jej konfigurowanie dla konkretnego środowiska.

Aby zapoznać się z omówieniem zawartości projektu usługi, zobacz Pierwsze kroki z usługami Reliable Services.

Konfigurowanie zasobów sieciowych

Wdrażana przykładowa aplikacja w technologii Node.js korzysta z portu 80 i dlatego trzeba poinformować usługę Service Fabric, że ten port musi być widoczny.

Otwórz plik ServiceManifest.xml w projekcie. W dolnej części manifestu znajduje <Resources> \ <Endpoints> się wpis z już zdefiniowanym wpisem. Zmodyfikuj ten wpis, aby dodać parametry Port, Protocol, i Type.

  <Resources>
    <Endpoints>
      <!-- This endpoint is used by the communication listener to obtain the port on which to 
           listen. Please note that if your service is partitioned, this port is shared with 
           replicas of different partitions that are placed in your code. -->
      <Endpoint Name="MyGuestAppServiceTypeEndpoint" Port="80" Protocol="http" Type="Input" />
    </Endpoints>
  </Resources>

Wdróż na platformie Azure

Jeśli naciśniesz klawisz F5 i uruchomisz projekt, zostanie on wdrożony w klastrze lokalnym. Zamiast tego wdrożymy go jednak na platformie Azure.

Kliknij prawym przyciskiem myszy projekt i wybierz polecenie Publikuj.... Zostanie otwarte okno dialogowe publikowania na platformie Azure.

Okno dialogowe Publikuj na platformie Azure dla usługi Service Fabric

Wybierz docelowy profil PublishProfiles\Cloud.xml.

Jeśli nie zostało to wykonane wcześniej, wybierz konto platformy Azure, na którym ma się odbyć wdrożenie. Jeśli nie masz jeszcze konta, utwórz je.

W obszarze Punkt końcowy połączenia wybierz klaster usługi Service Fabric do wdrożenia. Jeśli go nie masz, wybierz pozycję <Utwórz nowy klaster...> co spowoduje otwarcie okna przeglądarki internetowej w Azure Portal. Aby uzyskać więcej informacji, zobacz artykuł dotyczący tworzenia klastra w portalu.

Podczas tworzenia klastra usługi Service Fabric upewnij się, że ustawienie Niestandardowe punkty końcowe ma wartość 80.

Konfiguracja typu węzła usługi sieci szkieletowej z niestandardowym punktem końcowym

Tworzenie nowego klastra usługi Service Fabric zajmuje trochę czasu. Po utworzeniu wróć do okna dialogowego publikowania i wybierz pozycję <Odśwież>. Nowy klaster znajduje się w polu listy rozwijanej; wybierz go.

Naciśnij przycisk Publikuj i poczekaj na zakończenie wdrożenia.

Może to potrwać kilka minut. Po zakończeniu instalacji może minąć jeszcze kilka minut, zanim aplikacja stanie się w pełni dostępna.

Testowanie witryny sieci Web

Po opublikowaniu usługi przetestuj ją w przeglądarce sieci web.

Najpierw otwórz witrynę Azure Portal i znajdź swoją usługę Service Fabric.

Sprawdź adres bloku omówienia usługi. Użyj nazwy domeny z właściwości Punkt końcowy połączenia klienta. Na przykład http://mysvcfab1.westus2.cloudapp.azure.com.

Blok omówienia usługi sieci szkieletowej w witrynie Azure Portal

Przejdź do tego adresu, w którym zobaczysz HELLO WORLD odpowiedź.

Usuwanie klastra

Nie zapomnij usunąć wszystkich zasobów utworzonych na potrzeby tego przewodnika Szybki start, ponieważ są naliczane opłaty za te zasoby.

Następne kroki

Przeczytaj więcej na temat plików wykonywalnych gościa.