Docker を使用した Visual Studio 開発のトラブルシューティング

適用対象: Visual Studio

Visual Studio Container Tools を使用しているときに、アプリケーションのビルドまたはデバッグ中に問題が発生する可能性があります。 この記事では、問題の一般的なトラブルシューティング手順について説明します。

ボリューム共有が有効になっていません。 Docker CE for Windows 設定でボリューム共有を有効にする (Linux コンテナーのみ)

ファイル共有は、Docker で Hyper-V を使用している場合にのみ管理する必要があります。 WSL 2 を使用している場合、次の手順は必要ありません。また、ファイル共有オプションは表示されません。 この問題を解決するには

  1. 通知領域で [Docker for Windows ] を右クリックし、[設定] を選択 します

  2. [リソースファイル共有]> を選択し、アクセスする必要があるフォルダーを共有します。 システム ドライブ全体の共有は可能ですが、推奨されません。

    共有ドライブのスクリーンショット。

ヒント

共有ドライブが構成されていない場合は、Visual Studio からメッセージが表示されます。

デバッグを開始できません

この問題の理由の 1 つは、ユーザー プロファイル フォルダーに古いデバッグ コンポーネントが含まれると関連している可能性があります。 次のコマンドを実行してこれらのフォルダーを削除し、次のデバッグ セッションで最新のデバッグ コンポーネントがダウンロードされるようにします。

  • del %userprofile%\vsdbg
  • del %userprofile%\onecoremsvsmon

アプリケーションのデバッグ時のネットワークに固有のエラー

クリーンアップ コンテナー ホスト ネットワークからダウンロードできるスクリプトを実行してみてください。これにより、ホスト コンピューター上のネットワーク関連コンポーネントが更新されます。

マウントが拒否されました

Docker for macOS を使用すると、 フォルダー /usr/local/share/dotnet/sdk/NuGetFallbackFolder を参照するエラーが発生する可能性があります。 Docker の [ ファイル共有 ] タブにフォルダーを追加します。

Docker ユーザー グループ

コンテナーを操作するときに、Visual Studio で次のエラーが発生する可能性があります。

Docker Desktop を使用するには、現在のユーザーが 'docker-users' グループに存在している必要があります。 "docker-users" グループに自分を追加し、Windows からログアウトします。

Docker コンテナーを操作するためのアクセス許可を持つためには、"docker-users" グループのメンバーである必要があります。 Windows 10以降のグループに自分自身を追加するには、次の手順に従います。

  1. [スタート] メニューの [ コンピューターの管理] を開きます
  2. [ ローカル ユーザーとグループ] を展開し、[グループ] を選択 します
  3. docker-users グループを見つけて右クリックし、[グループに追加] を選択します。
  4. ユーザー アカウントまたはアカウントを追加します。
  5. これらの変更を有効にするには、サインアウトしてもう一度サインインします。

管理者コマンド プロンプトで コマンドを net localgroup 使用して、特定のグループにユーザーを追加することもできます。

net localgroup docker-users DOMAIN\username /add

PowerShell で、 Add-LocalGroupMember 関数を使用します。

ディスク領域が少ない

既定では、Docker は %ProgramData%/Docker/ フォルダーにイメージを格納します。通常はシステム ドライブ C:\ProgramData\Docker\ にあります。 イメージがシステム ドライブ上の貴重な領域を占有しないようにするには、イメージ フォルダーの場所を変更します。 そのためには、次を実行します。

  1. タスク バーの Docker アイコンを右クリックし、[設定] を選択 します

  2. [ Docker Engine] を選択します。

  3. 編集ウィンドウで、Docker イメージの graph 目的の場所の値を持つプロパティ設定を追加します。

       "graph": "D:\\mypath\\images"
    

    Docker ファイル共有のスクリーンショット。

  4. [ 適用] & [再起動] を選択します。 これらの手順では、 %ProgramData%\docker\config\daemon.jsonの構成ファイルを変更します。 以前にビルドされたイメージは移動されません。

コンテナーの種類の不一致

Docker サポートをプロジェクトに追加する場合は、Windows コンテナーまたは Linux コンテナーのいずれかを選択します。 プロジェクト ターゲットと同じコンテナーの種類を実行するように Docker Server ホストが構成されていない場合は、次のようなエラーが表示されます。

Docker ホストとプロジェクトの不一致のスクリーンショット。

この問題を解決するには、システム トレイの [Docker for Windows] アイコンを右クリックし、[Windows コンテナーに切り替える] または [Linux コンテナーに切り替える]を選択します。...

その他の問題

発生したその他の問題については、「 Microsoft/DockerTools の 問題」を参照してください。

関連情報