Visual Studio2017で既に実行されているDockerLinux.netコアコンテナーのデバッグ

アンクッシュ

Visual Studioを使用すると、.netコアアプリケーションを作成してLinuxコンテナーで実行すると、Visual Studio2017を使用して簡単にデバッグできます。

しかし、cmdからdocker runを使用して同じイメージインスタンス(リリースバージョン)を実行すると、VS2017でそのインスタンスにアタッチする方法を見つけることができません。

Visual Studioがそれを行う方法と、すでに実行されているDocker Linux .netコアコンテナーに対して同じことを行う方法、およびDockerイメージインスタンスがリモートLinuxマシンで実行されている場合に同じことを行う方法を理解したいと思います。

例を挙げた具体的な手順はほとんど役に立ちません。

マークジョーンズ

Ankushのブログ投稿を読んだら、これはどうですか。

サービスがmicrosoft / dotnetイメージに基づいている場合は、同じイメージに基づいて新しいdockerfileを作成し、デバッガー、ssh、およびunzipをインストールします。

FROM microsoft/dotnet

RUN apt-get update && apt-get -y install openssh-server unzip

RUN mkdir /var/run/sshd && chmod 0755 /var/run/sshd 
RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin without-password/g' /etc/ssh/sshd_config
RUN sed -i 's/#StrictModes yes/StrictModes no/g' /etc/ssh/sshd_config

RUN service ssh restart

RUN mkdir /root/.vs-debugger && chmod 0755 /root/.vs-debugger
RUN curl -sSL https://aka.ms/getvsdbgsh | bash /dev/stdin -v vs2017u1 -l /root/.vs-debugger/

EXPOSE 22  

これをビルドしてレジストリにプッシュします。

docker build -t myregistry/dotnetdebugger .
docker push myregistry/dotnetdebugger 

次に、サービスのビルドがPDBファイルをポータブルPDBとして出力していることを確認しますhttps://github.com/Microsoft/MIEngine/wiki/Offroad-Debugging-of-.NET-Core-on-Linux---OSX-from-Visual -スタジオ

また、サービスのDockerイメージをビルドするときに、PDBファイルがdllに含まれていることを確認してください。または、サイドカーコンテナを起動するときに、PDBファイルを含むアーティファクトディレクトリをボリュームマウントします。

次に、コンテナーが実行されていて、それをデバッグする必要があると判断した場合、デバッガーコンテナーをサイドカーコンテナーとしてサービスにアタッチできます。

docker run -d -p 10222:22 --pid container:<container name>  myregistry/dotnetdebugger 

次に、Visual Studioで、[ツール]> [オプション]> [クロスプラットフォーム]> [接続マネージャー]に移動し、新しい接続を追加します。サイドカーコンテナのIPまたはホスト名を指定し、ポート(docker runコマンドのポート)として10222を指定し、パスワードのないユーザーとしてrootを指定します。

完了したら、サイドカーコンテナーをシャットダウンし、サービスコンテナーを実行したままにして、サービスの一般的な操作に必要のないものを公開しないようにすることができます。

お役に立てば幸いです

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Visual Studio2017は管理者モードで実行されています

分類Dev

Visual Studio2017のAzureFunctions v2にNodeJSを含めて実行するにはどうすればよいですか?

分類Dev

Visual Studio2017でDockerコンテナを実行するときにAWS認証情報を管理する方法

分類Dev

Visual Studio2017では常にビルド後のイベントコマンドを実行してください

分類Dev

Microsoft.Azure.SignalR.AspNetをインストールすると、サーバーにデプロイしたときにメソッドが実装されていないランタイムエラーが発生しますが、Visual Studio2017では正常に実行されます

分類Dev

Visual Studio2017でxamarinを使用してモバイルアプリを作成するためのデザイナーのドラッグアンドドロップオプションが表示されない

分類Dev

Visual Studio Container Toolsでは、コンテナー化されたプロジェクトをビルド、デバッグ、または実行する前に、Dockerが実行されている必要があります。

分類Dev

ローカルIISで実行するように構成されている場合、Visual Studio2017がプロジェクトをランダムに切り替えてIISExpressで実行するのを防ぐにはどうすればよいですか?

分類Dev

Visual Studio2017でエラーが強調表示されない

分類Dev

Webpack Visual Studio 2017 .NET Core2.2にバンドルされているChromeでTypescriptをデバッグする

分類Dev

Visual Studio 2017が既にインストールされている場所にtwistedをインストールするには、Microsoft Visual C ++ 14.0が必要です。

分類Dev

Visual Studio2017がWSLに接続できないユーザー名とパスワードが間違っていると表示される

分類Dev

Visual Studio2017ツールバーに表示されないWebEssentials 2017

分類Dev

Visual Studio2017での保存または公開時にTypescriptがコンパイルされない

分類Dev

Visual Studio2017から.NetCoreコンソールアプリをデバッグする

分類Dev

Visual Studio 2013 C ++:STLコンテナーの要素がデバッガーに表示されます

分類Dev

Visual Studio2017で.NET4.6フレームワークのソースコードをデバッグするにはどうすればよいですか?

分類Dev

Visual Studio Code-Pythonデバッグ-実行時に外部関数のコードにステップイン

分類Dev

Visual Studio2017がインストールされているsigntool.exeへのパスを取得する方法

分類Dev

Visual Studio2017がインストール用の拡張機能によって検出されない

分類Dev

Visual Studio2017に表示されていないドイツのウムラウトをVuetify

分類Dev

Visual Studio2017でEnterpriseBot Templateを実行しようとすると、「Azure CLIをアップグレードする必要があります」というエラーが表示されますが、AzureCLIは最新です。

分類Dev

Visual Studio2017に編集/追加されたアイコンが表示されない

分類Dev

実装されていないコンソールAPI:未定義、Visual StudioCodeデバッグでのエラー

分類Dev

「AnyCPU」で構築されているプロジェクトのプロセッサアーキテクチャは、参照されているSDK「SQLite.UWP.2015」ではサポートされていません。Visual Studio2017で

分類Dev

Visual Studio2017でデバッガーをAzureWebアプリにアタッチするにはどうすればよいですか?

分類Dev

Visual Studio2017はIISExpressでコアアプリを実行しません

分類Dev

Visual Studio2017はIISExpressでコアアプリを実行しません

分類Dev

Visual Studio2017でソリューションを保存するにはどうすればよいですか

Related 関連記事

  1. 1

    Visual Studio2017は管理者モードで実行されています

  2. 2

    Visual Studio2017のAzureFunctions v2にNodeJSを含めて実行するにはどうすればよいですか?

  3. 3

    Visual Studio2017でDockerコンテナを実行するときにAWS認証情報を管理する方法

  4. 4

    Visual Studio2017では常にビルド後のイベントコマンドを実行してください

  5. 5

    Microsoft.Azure.SignalR.AspNetをインストールすると、サーバーにデプロイしたときにメソッドが実装されていないランタイムエラーが発生しますが、Visual Studio2017では正常に実行されます

  6. 6

    Visual Studio2017でxamarinを使用してモバイルアプリを作成するためのデザイナーのドラッグアンドドロップオプションが表示されない

  7. 7

    Visual Studio Container Toolsでは、コンテナー化されたプロジェクトをビルド、デバッグ、または実行する前に、Dockerが実行されている必要があります。

  8. 8

    ローカルIISで実行するように構成されている場合、Visual Studio2017がプロジェクトをランダムに切り替えてIISExpressで実行するのを防ぐにはどうすればよいですか?

  9. 9

    Visual Studio2017でエラーが強調表示されない

  10. 10

    Webpack Visual Studio 2017 .NET Core2.2にバンドルされているChromeでTypescriptをデバッグする

  11. 11

    Visual Studio 2017が既にインストールされている場所にtwistedをインストールするには、Microsoft Visual C ++ 14.0が必要です。

  12. 12

    Visual Studio2017がWSLに接続できないユーザー名とパスワードが間違っていると表示される

  13. 13

    Visual Studio2017ツールバーに表示されないWebEssentials 2017

  14. 14

    Visual Studio2017での保存または公開時にTypescriptがコンパイルされない

  15. 15

    Visual Studio2017から.NetCoreコンソールアプリをデバッグする

  16. 16

    Visual Studio 2013 C ++:STLコンテナーの要素がデバッガーに表示されます

  17. 17

    Visual Studio2017で.NET4.6フレームワークのソースコードをデバッグするにはどうすればよいですか?

  18. 18

    Visual Studio Code-Pythonデバッグ-実行時に外部関数のコードにステップイン

  19. 19

    Visual Studio2017がインストールされているsigntool.exeへのパスを取得する方法

  20. 20

    Visual Studio2017がインストール用の拡張機能によって検出されない

  21. 21

    Visual Studio2017に表示されていないドイツのウムラウトをVuetify

  22. 22

    Visual Studio2017でEnterpriseBot Templateを実行しようとすると、「Azure CLIをアップグレードする必要があります」というエラーが表示されますが、AzureCLIは最新です。

  23. 23

    Visual Studio2017に編集/追加されたアイコンが表示されない

  24. 24

    実装されていないコンソールAPI:未定義、Visual StudioCodeデバッグでのエラー

  25. 25

    「AnyCPU」で構築されているプロジェクトのプロセッサアーキテクチャは、参照されているSDK「SQLite.UWP.2015」ではサポートされていません。Visual Studio2017で

  26. 26

    Visual Studio2017でデバッガーをAzureWebアプリにアタッチするにはどうすればよいですか?

  27. 27

    Visual Studio2017はIISExpressでコアアプリを実行しません

  28. 28

    Visual Studio2017はIISExpressでコアアプリを実行しません

  29. 29

    Visual Studio2017でソリューションを保存するにはどうすればよいですか

ホットタグ

アーカイブ