Dołączanie do procesu uruchomionego w kontenerze platformy Docker

Aplikacje uruchomione w kontenerze platformy Docker systemu Windows lub kontenerze platformy Docker platformy .NET Core dla systemu Linux można debugować przy użyciu programu Visual Studio.

Wymagania wstępne

Jeśli nie jest jeszcze obecny na serwerze z systemem Linux, musisz zainstalować serwer SSH, rozpakuj i zainstaluj za pomocą narzędzia curl lub wget. Na przykład w systemie Ubuntu możesz to zrobić, uruchamiając polecenie:

sudo apt-get install openssh-server unzip curl

Protokół SECURE File Transfer Protocol (SFTP) musi być również włączony. Większość dystrybucji SSH instaluje i domyślnie włącza protokół SFTP, ale nie zawsze tak jest.

Dołączanie do procesu uruchomionego w kontenerze platformy Docker systemu Linux

Debuger programu Visual Studio można dołączyć do procesu uruchomionego w kontenerze platformy Docker platformy .NET Core systemu Linux na komputerze lokalnym lub zdalnym przy użyciu okna dialogowego Dołączanie do procesu .

Ważne

Aby korzystać z tej funkcji, musisz mieć dostęp lokalny do kodu źródłowego.

Aby dołączyć do uruchomionego procesu w kontenerze platformy Docker systemu Linux:

  1. W programie Visual Studio wybierz pozycję Dołącz debugowanie > do procesu (CTRL+ALT+P), aby otworzyć okno dialogowe Dołączanie do procesu .

Zrzut ekranu przedstawiający okno dialogowe Dołączanie do procesu w programie Visual Studio z typem Połączenie ion platformy Docker (Kontener systemu Linux).

  1. Ustaw typ Połączenie ion na Docker (Kontener systemu Linux).

  2. Wybierz pozycję Znajdź..., aby ustawić cel Połączenie ion za pomocą okna dialogowego Wybieranie kontenera platformy Docker.

    Można debugować proces kontenera platformy Docker lokalnie lub zdalnie.

    Aby debugować proces kontenera platformy Docker lokalnie:

    1. Ustaw hosta interfejsu wiersza polecenia platformy Docker na Komputer lokalny.
    2. Wybierz uruchomiony kontener do dołączenia z listy i naciśnij przycisk OK.

    Wybieranie menu Kontener platformy Docker

    B. Aby zdalnie debugować proces kontenera platformy Docker:

    Uwaga

    Istnieją dwie opcje zdalnego łączenia się z uruchomionym procesem w kontenerze platformy Docker. Pierwsza opcja, aby użyć protokołu SSH, jest idealna, jeśli nie masz zainstalowanych narzędzi platformy Docker na komputerze lokalnym. Jeśli masz zainstalowane lokalnie narzędzia platformy Docker i masz demona platformy Docker skonfigurowanego do akceptowania żądań zdalnych, wypróbuj drugą opcję przy użyciu demona platformy Docker.

    1. Aby nawiązać połączenie z maszyną zdalną za pośrednictwem protokołu SSH:

      1. Wybierz pozycję Dodaj..., aby nawiązać połączenie z systemem zdalnym.
        Połączenie do systemu zdalnego
      2. Wybierz uruchomiony kontener, do których chcesz dołączyć po pomyślnym nawiązaniu połączenia z protokołem SSH lub demonem, a następnie naciśnij przycisk OK.
    2. Aby ustawić element docelowy na zdalny kontener, w którym jest uruchamiany proces za pośrednictwem demona platformy Docker

      1. Określ adres demona (czyli za pośrednictwem protokołu TCP, IP itd.) w obszarze Hosta platformy Docker (opcjonalnie) i kliknij link odświeżania.
      2. Wybierz uruchomiony kontener do dołączenia do po pomyślnym nawiązaniu połączenia z demonem i naciśnij przycisk OK.
  3. Wybierz odpowiedni proces kontenera z listy Dostępne procesy i wybierz pozycję Dołącz , aby rozpocząć debugowanie procesu kontenera języka C# w programie Visual Studio!

    Zrzut ekranu przedstawiający okno dialogowe Dołączanie do procesu w programie Visual Studio. typ Połączenie ion jest ustawiony na platformę Docker (kontener systemu Linux), a proces dotnet jest zaznaczony.

Dołączanie do procesu uruchomionego w kontenerze platformy Docker systemu Windows

Debuger programu Visual Studio można dołączyć do procesu uruchomionego w kontenerze platformy Docker systemu Windows na komputerze lokalnym przy użyciu okna dialogowego Dołączanie do procesu .

Ważne

Aby użyć tej funkcji z procesem .NET Core, należy zainstalować obciążenie Programowanie międzyplatformowe platformy .NET Core i mieć dostęp lokalny do kodu źródłowego.

Aby dołączyć do uruchomionego procesu w kontenerze platformy Docker systemu Windows:

  1. W programie Visual Studio wybierz pozycję Dołącz debugowanie > do procesu (lub CTRL+ALT+P), aby otworzyć okno dialogowe Dołączanie do procesu .

    Zrzut ekranu przedstawiający okno dialogowe Dołączanie do procesu w programie Visual Studio z typem Połączenie ion platformy Docker (Kontener systemu Windows).

  2. Ustaw typ Połączenie ion na Platformę Docker (Kontener systemu Windows).

  3. Wybierz pozycję Znajdź..., aby ustawić cel Połączenie ion przy użyciu okna dialogowego Wybieranie kontenera platformy Docker.

    Ważne

    Proces docelowy musi mieć taką samą architekturę procesora, jak kontener systemu Windows platformy Docker, na którym jest uruchomiony.

    Ustawienie elementu docelowego na kontener zdalny za pośrednictwem protokołu SSH jest obecnie niedostępne i można to zrobić tylko przy użyciu demona platformy Docker.

    Aby ustawić element docelowy na zdalny kontener, w którym jest uruchamiany proces za pośrednictwem demona platformy Docker

    1. Określ adres demona (czyli za pośrednictwem protokołu TCP, IP itd.) w obszarze Hosta platformy Docker (opcjonalnie) i kliknij link odświeżania.

    2. Wybierz uruchomiony kontener, do który ma zostać dołączony po pomyślnym nawiązaniu połączenia z demonem, a następnie wybierz przycisk OK.

  4. Wybierz odpowiedni proces kontenera z listy Dostępne procesy i wybierz pozycję Dołącz , aby rozpocząć debugowanie procesu kontenera języka C#.

    Zrzut ekranu przedstawiający okno dialogowe Dołączanie do procesu w programie Visual Studio. typ Połączenie ion jest ustawiony na platformę Docker (kontener systemu Windows), a proces dotnet.exe jest zaznaczony.