Udostępnij za pośrednictwem


Instrukcje: debugowanie kontenerów systemu Windows w usłudze Azure Service Fabric przy użyciu programu Visual Studio 2019

Za pomocą programu Visual Studio 2019 można debugować aplikacje .NET w kontenerach jako usługi Service Fabric. W tym artykule pokazano, jak skonfigurować środowisko, a następnie debugować aplikację .NET w kontenerze działającym w lokalnym klastrze usługi Service Fabric.

Wymagania wstępne

Konfigurowanie środowiska deweloperskiego do debugowania kontenerów

  1. Przed kontynuowaniem następnego kroku upewnij się, że usługa Docker for Window jest uruchomiona.

  2. Aby obsługiwać rozpoznawanie nazw DNS między kontenerami, należy skonfigurować lokalny klaster projektowy przy użyciu nazwy komputera. Te kroki są również niezbędne, jeśli chcesz adresować usługi za pośrednictwem zwrotnego serwera proxy.

    1. Otwórz program PowerShell jako administrator

    2. Przejdź do folderu konfiguracji klastra zestawu SDK, zazwyczaj C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup.

    3. Uruchamianie skryptu DevClusterSetup.ps1

        C:\Program Files\Microsoft SDKs\Service Fabric\ClusterSetup\DevClusterSetup.ps1
      

      Uwaga

      Możesz użyć polecenia , -CreateOneNodeCluster aby skonfigurować klaster z jednym węzłem. Wartość domyślna spowoduje utworzenie lokalnego klastra z pięcioma węzłami.

      Aby dowiedzieć się więcej o usłudze DNS w usłudze Service Fabric, zobacz Usługa DNS w usłudze Azure Service Fabric. Aby dowiedzieć się więcej na temat używania zwrotnego serwera proxy usługi Service Fabric z usług uruchomionych w kontenerze, zobacz Odwrotna obsługa serwera proxy dla usług uruchomionych w kontenerach.

Znane ograniczenia podczas debugowania kontenerów w usłudze Service Fabric

Poniżej znajduje się lista znanych ograniczeń dotyczących debugowania kontenerów w usłudze Service Fabric i możliwych rozwiązań:

  • Użycie hosta lokalnego dla elementu ClusterFQDNorIP nie będzie obsługiwać rozpoznawania nazw DNS w kontenerach.
    • Rozwiązanie: Konfigurowanie klastra lokalnego przy użyciu nazwy komputera (zobacz powyżej)
  • Uruchomienie systemu Windows10 na maszynie wirtualnej nie będzie otrzymywać odpowiedzi DNS z powrotem do kontenera.
  • Rozpoznawanie usług w tej samej aplikacji przy użyciu nazwy usługi DNS nie działa w systemie Windows10, jeśli aplikacja została wdrożona przy użyciu narzędzia Docker Compose
  • W przypadku używania adresu IP dla elementu ClusterFQDNorIP zmiana podstawowego adresu IP na hoście spowoduje przerwanie działania systemu DNS.
    • Rozwiązanie: utwórz ponownie klaster przy użyciu nowego podstawowego adresu IP na hoście lub użyj nazwy komputera. Ten podział jest zgodnie z projektem.
  • Jeśli nazwa FQDN, z którą został utworzony klaster, nie jest rozpoznawalna w sieci, usługa DNS zakończy się niepowodzeniem.
    • Rozwiązanie: utwórz ponownie klaster lokalny przy użyciu podstawowego adresu IP hosta. Ten błąd jest zgodnie z projektem.
  • Podczas debugowania kontenera dzienniki platformy Docker będą dostępne tylko w oknie danych wyjściowych programu Visual Studio, a nie za pośrednictwem interfejsów API usługi Service Fabric, w tym Service Fabric Explorer

Debugowanie aplikacji .NET uruchomionej w kontenerach platformy Docker w usłudze Service Fabric

  1. Uruchom program Visual Studio jako administrator.

  2. Otwórz istniejącą aplikację .NET lub utwórz nową.

  3. Kliknij projekt prawym przyciskiem myszy i wybierz polecenie Dodaj —> Obsługa orkiestratora kontenerów —> Service Fabric

  4. Naciśnij klawisz F5 , aby rozpocząć debugowanie aplikacji.

    Program Visual Studio obsługuje typy projektów konsoli i ASP.NET dla platform .NET i .NET Core.

Następne kroki

Aby dowiedzieć się więcej na temat możliwości usługi Service Fabric i kontenerów, zobacz Omówienie kontenerów usługi Service Fabric.