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 つの方法

推薦する

サブセットかどうかを判断するためのMySQLメソッドの手順

目次1. 問題2. 解決策オプション1:オプション2: 1. 問題この話は、エラーと脱落率を照会する...

MacでMysqlのルートパスワードを忘れた場合の解決方法

長い間コンピューターで mysql を使用していなかったので、パスワードを忘れてしまいました。でも、...

JS でオブジェクト プロパティを簡単にトラバースするいくつかの方法

目次1. 自己列挙可能なプロパティ2. Object.values()はプロパティ値を返します3. ...

Ubuntu システムログで /var/log/messages を設定する方法

1. 問題の説明今日、システム ログ ファイルを確認する必要がありますが、/var/log/mess...

MySQLのexplain型の詳細な説明

導入:多くの場合、さまざまな選択ステートメントを使用して必要なデータを照会した後、多くの人は作業が正...

JavaScript でオブジェクトをトラバースする 5 つの方法 サンプルコード

目次準備する5つの武器…のためにオブジェクト.キーオブジェクト.getOwnPropertyName...

JavaScriptにおけるこのポインティング問題の詳細な説明

序文信じてください。この記事の 7️⃣ ステップを覚えておけば、JS の this リファレンスを完...

Linux で Oracle データベースをバックアップするためのスケジュールされたタスクの設定に関するチュートリアル

1. データベースの文字セットを確認するデータベースの文字セットは、Linux で設定された環境変数...

MySQLのスロークエリの詳細な説明

MySQL操作情報のクエリ show status -- すべての MySQL 操作情報を表示します...

左右の幅を固定し、中央の幅を適応させたHTMLレイアウトのソリューションの詳細な説明

この記事では、次のように、誰にでも共有できる左右幅固定のミドルアダプティブ HTML レイアウトソリ...

Vue で v-if と v-for を一緒に使用することが推奨されない理由の詳細な説明

この記事では主に、v-if と v-for を一緒に使用することが推奨されない理由を紹介します。詳細...

MySQL binlog ログを開く方法

binlog は、すべての mysql dml 操作を記録するバイナリ ログ ファイルです。 bin...

自動ヘルスレポートを実現するDocker+Selenium方式

この記事では、ある大学の健康報告システムを例に、Web 側の自動化操作を完成させます。使用したテクノ...

Vue/React シングルページ アプリケーションをリフレッシュなしで復元するソリューション

目次導入なぜわざわざ?落とし穴のあるコミュニティソリューション(Vue を例に挙げる)現時点では良い...

MySQL ステートメントを使用した簡単な追加、削除、変更、クエリ操作の例

この記事では、例を使用して、MySQL ステートメントを使用して、単純な追加、削除、変更、およびクエ...