Docker の win ping 失敗コンテナ回避ガイド

Docker の win ping 失敗コンテナ回避ガイド

win docker-desktopを使ってコンテナ開発に接続し、ネットワーク上で色々試してみたいと思います。私の時間をつぶしてください!

ブリッジングは選択肢ではありません。

手動でルートを追加しても機能しません。

そのため、これを目にした場合は、Windowsホストを使用してLinuxコンテナを接続する従来の方法を使用することを考えないでください。2020年3月29日現在

詳細については、Docker Desktop for Windows のネットワーク機能を参照してください。

つまり、Win コンテナと Linux コンテナ間のブリッジ通信は現在サポートされていません。

ただし、ポートマッピングは可能ですが、ポートを追加しすぎると少し面倒です。

過ぎ去った時間へ。

加えて

ホストマシン上の vscode の remote-dev を使用して、コンテナに直接アクセスできます。突然、これが素晴らしいことに気づき、開発上の困難が解決しました。

ついにB2Wできるようになった。とても嬉しい

ちなみに、私のコンピューターのグラフィック カードは、どうやっても tensorflow に匹敵しませんでした。また、vm はグラフィック カードをサポートしていませんでしたが、docker はサポートしていたため、win+docker+vscode という完璧な組み合わせになりました (その後、docker-desktop は現在 Linux のグラフィック カードをサポートしていないことがわかりました:( )

補足:Dockerコンテナはwin10ホストの下ではpingできず、Dockerは静的IPを作成します

回避策

DockerのゲートウェイIPをホストルーティングに追加する

 // CMD 管理者モード // 172.19.0.0 は私が作成したもので、必要に応じて変更する必要があります。route add 172.19.0.0/16 mask 255.255.255.0 10.0.75.2 -p // 永続的なルート。そうでない場合は、再起動後に存在しなくなります。

win: ルートを表示 印刷

Docker ゲートウェイ:

Dockerは静的IPを作成します

 // Docker は静的 IP アドレスを割り当てます。独自のネットワークをカスタマイズする必要があります。デフォルトのネットワークは機能しません。 docker network create --subnet=172.19.0.0/16 mynet //2 の 16 乗が使用されます。 docker run -itd --name nginx2 --net mynet --ip 172.19.0.1 ubuntu 
 

上記は私の個人的な経験です。参考になれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。間違いや不備な点がありましたら、遠慮なくご指摘ください。

以下もご興味があるかもしれません:
  • 非ルートユーザーを使用してDockerコンテナでスクリプト操作を実行する
  • Dockerコンテナにホストディレクトリへの書き込み権限がない場合の解決策
  • Dockerコンテナの中国語言語パックの設定の問題を解決する
  • DockerコンテナがSongtiなどのフォントを認識しない場合の解決策
  • DockerコンテナでJupyterノートブックを設定する方法
  • Dockerはコンテナポートバインディングのローカルポートを実装します
  • docker run後にコンテナがExited (0)と表示される問題を解決する
  • Dockerはコンテナに入るためにルートを使用する

<<:  ウェブデザインの教育または学習プログラム

>>:  CSS を使用して正方形の div を実装する 2 つの方法

推薦する

ウェブデザインにおけるテキスト入力ボックスのパラメータの説明

一般的なゲストブック、フォーラムなどでは、テキスト入力ボックスが使われています。これは HTML 言...

JSホモロジー戦略とCSRFの詳細な説明

目次概要同一生成元ポリシー (SOP)相同制限クロスドメインをバイパスクロスサイトリクエストフォージ...

HTML リスト ボックス、テキスト フィールド、ファイル フィールドのサンプル コード

ドロップダウンボックス、テキストフィールド、ファイルフィールド 上半分はデモンストレーション効果、下...

床スクロール効果を実現する js

この記事ではjQueryを使用して、階段のスライド効果を実装し、フロアをスクロールし、フロアボタンを...

Vue でクラスとスタイルを使用して v-bind バインディングを使用するいくつかの方法

要素にクラスを追加/削除することは、プロジェクト開発では非常に一般的な動作です。たとえば、Web サ...

MySQL の大きなテーブルで大量のデータを一括削除する方法

質問はhttps://www.zhihu.com/question/440066129/answer...

Nginx 構成 SSL および WSS 手順の紹介

目次序文1. Nginxのインストール1. Nginxをダウンロードする2. 依存関係をインストール...

MySQL 5.7 および MySQL 8.0 でルートパスワードを変更する方法の概要

MySQL 5.7 バージョン:方法1: SET PASSWORDコマンドを使用するフォーマット: ...

Vue+Openlayerはグラフィックスのドラッグと回転変形効果を実現します

目次序文関連資料成果を達成する実装手順序文Openlayer には独自の拡張プラグイン ol-ext...

Dockerはローカルイメージをパッケージ化し、他のマシンに復元します

1. docker imagesを使用して、このマシン上のすべてのイメージファイルを表示します。 2...

Vueにログイン認証傍受機能を設置するアイデアを詳しく解説

目次1. 解決策2. サーバーから返されたトークンをブラウザに保存する3. リクエストにアクセス権限...

CSS を使用して複数の方法で等高レイアウトを実装するサンプル コード

この記事で説明する等高レイアウトでは、純粋な CSS を使用して、要素の高さを手動で設定することなく...

MySQLにおける時刻日付型と文字列型の選択について

目次1. DATETIMEとTIMESTAMPの使用1. 類似点2. 相違点3. 選択2. varc...

Vue マルチ選択リスト コンポーネントの詳細な説明

マルチ選択は、すべてのオプションを一覧表示し、ユーザーが Ctrl/Shift キーを使用して複数選...

ブラウザの互換モードでボタン内のテキストが垂直方向に中央揃えにならない問題について簡単に説明します。

XML/HTML コードコンテンツをクリップボードにコピー<ボタンスタイル= "カ...