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.
Warunki 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
Debuggera programu Visual Studio można dołączyć do procesu uruchomionego w kontenerze Docker na platformie .NET Core działającym na systemie Linux, korzystając z okna dialogowego Dołączanie do procesu na komputerze lokalnym lub zdalnym.
Ważny
Aby korzystać z tej funkcji, musisz mieć dostęp lokalny do kodu źródłowego.
Notatka
Korzystając z tych instrukcji, możesz dołączyć do platformy Docker z systemem Linux uruchomioną w programie WSL za pośrednictwem protokołu SSH, ale wystąpienie programu WSL musi najpierw uruchomić serwer SSH. Można na przykład zainstalować serwer Open SSH (na przykład: sudo apt-get install openssh-server
), skonfigurować serwer, edytując plik konfiguracji (na przykład /etc/ssh/sshd_config), a następnie uruchomić serwer (na przykład: sudo service ssh start
).
Aby dołączyć do uruchomionego procesu w kontenerze platformy Docker systemu Linux:
W programie Visual Studio wybierz Debugowanie > Dołącz do procesu (CTRL+ALT+P), aby otworzyć okno dialogowe Dołącz do procesu.
Ustaw typ połączenia na Docker (Kontener Linux).
Wybierz pozycję Znajdź..., aby ustawić cel połączenia za pośrednictwem okna dialogowego Wybierz kontener platformy Docker.
Można debugować proces kontenera platformy Docker lokalnie lub zdalnie.
Aby debugować proces kontenera platformy Docker lokalnie:
Ustaw hosta Docker CLI na maszynę lokalną.
Wybierz uruchomiony kontener, do którego chcesz dołączyć z listy, a następnie naciśnij OK.
Aby zdalnie debugować proces kontenera platformy Docker:
Możesz nawiązać połączenie z uruchomionym procesem w kontenerze platformy Docker przy użyciu jednej z dwóch opcji. 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.
Aby nawiązać połączenie z maszyną zdalną za pośrednictwem protokołu SSH:
- Wybierz pozycję Dodaj..., aby połączyć się z systemem zdalnym.
- Wprowadź wymagane informacje o połączeniu i wybierz pozycję Connect.
- Po nawiązaniu połączenia z protokołem SSH wybierz uruchomiony kontener do dołączenia, a następnie wybierz pozycję OK.
- Wybierz pozycję Dodaj..., aby połączyć się z systemem zdalnym.
Aby ustawić kontener zdalny jako docelowy, który uruchamia proces za pośrednictwem demona Docker :
- Określ adres demona (czyli za pośrednictwem protokołu TCP, IP itd.) w obszarze hosta Docker (opcjonalnie), a następnie wybierz opcję Odśwież.
- Po pomyślnym nawiązaniu połączenia z demonem wybierz uruchomiony kontener, do którego chcesz się dołączyć, a następnie wybierz OK.
Wybierz odpowiadający proces kontenera z listy Dostępne procesy i wybierz Dołącz, aby rozpocząć debugowanie procesu kontenera C# w programie Visual Studio!
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żny
Aby użyć tej funkcji z procesem .NET Core, należy zainstalować pakiet Programowanie wieloplatformowe .NET Core i mieć lokalny dostęp do kodu źródłowego.
Aby dołączyć do uruchomionego procesu w kontenerze platformy Docker systemu Windows:
W programie Visual Studio wybierz pozycję Debugowanie > Dołączanie do procesu (lub CTRL+ALT+P), aby otworzyć okno dialogowe Dołączanie do procesu.
Ustaw typ połączenia na Docker (Kontener systemu Windows).
Wybierz pozycję Znajdź..., aby ustawić cel połączenia przy użyciu okna dialogowego Wybierz kontener platformy Docker.
Ważny
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 kontenerowi zdalnemu uruchamiającego proces za pośrednictwem demona platformy Docker :
Określ adres demona (czyli za pośrednictwem protokołu TCP, IP itd.) w obszarze hosta platformy Docker (opcjonalnie), a następnie wybierz pozycję Odśwież.
Po pomyślnym nawiązaniu połączenia z demonem wybierz uruchomiony kontener do dołączenia, a następnie wybierz OK.
Wybierz odpowiedni proces kontenera z listy Dostępne procesy i kliknij Dołącz, aby rozpocząć debugowanie procesu kontenera języka C#.