問題タブ [macvlan]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
6741 参照

docker - macvlan ネットワーク経由でホストから docker コンテナにアクセスできない

私の Linux ネットワークでは、専用の macvlan ネットワークを介して、実行中のホストから Docker コンテナーに到達できません。この macvlan ネットワークへの他のすべての接続は問題ありません。

したがって、基本的なセットアップは次のとおりです。

  • ホスト DOCKER1 が CONTAINER1 にアクセスできない
  • ホスト DOCKER2 が CONTAINER2 に到達できない
  • ホスト DOCKER1 は DOCKER2 にアクセスできます
  • ホスト DOCKER1 は CONTAINER2 にアクセスできます
  • ホスト DOCKER2 は DOCKER1 にアクセスできます
  • ホスト DOCKER2 は CONTAINER1 にアクセスできます
  • すべてのコンテナが互いに到達可能
  • 物理ネットワーク内の他のすべてのデバイスは、すべてのデバイスに到達できます。
  • すべてがゲートウェイ/インターネットに到達できます

ホストを macvlan ネットワーク経由で独自のコンテナーに到達させるにはどうすればよいですか?

このネットワークを介してやり取りするには特定のアプリケーションが必要なので、使用しdocker execても問題は解決しません;)。

0 投票する
1 に答える
93 参照

docker - Docker macvlan: hostB から hostA のコンテナにアクセスする

https://docs.docker.com/network/network-tutorial-macvlan/#prerequisites

「my-macvlan-net という名前の macvlan ネットワークを作成します。サブネット、ゲートウェイ、および親の値を、環境で意味のある値に変更します。」

ネットワークに関しては初心者です。私のenvで意味のある値が何を意味するのかわかりません

これは、ホスト ネットワーク インターフェイスに表示されるものです。ip addr

自分の環境でどの値が意味があるかを知るにはどうすればよいですか?

IP ルート

IP ルート

0 投票する
0 に答える
1343 参照

docker - macvlan を使用した Docker コンテナーは、他のホストから ping できません

同じホストから macvlan インターフェイスに ping できないことはわかっていますが、コンテナーの macvlan インターフェイスに別のサブネット上のホストから ping を実行することはできません (ルーター経由で接続されていても)。

ホスト IP: 10.8.2.132/22

Macvlan コンテナー IP: 10.8.2.250/22

その他のホスト IP: 10.4.16.141/22

ip route get 10.8.2.250 は、既知のルートがあることを示しています。

これをデバッグするにはどうすればよいですか?

docker macvlan ネットワークは次のように作成されました。

コンテナーを実行するときに、具体的に「--ip=10.8.2.250」を追加します

0 投票する
1 に答える
1112 参照

docker - DockerコンテナのJetBrains/Teamtools「アドレス0.0.0.0とポート443でリッスンできませんでした」

問題

私は、JetBrains Hub、Youtrack、Upsource、および Teamcity を Docker コンテナにセットアップし、HTTPS 用に 443 および 443 にリダイレクトされたデフォルト ポート 80 で独自の IP (macvlan) で使用できるようにそれぞれを構成しようとしています (したがって、ポート番号はブラウザには表示されません)。

ただし、それを行うと、次のようになります。

アドレス 0.0.0.0 およびポート 443 でリッスンできませんでした

teamtools をデフォルトのポート 8080 および 8443 のままにしておくか、2000 を超えるポートを与えることも同様に機能するようです。

確認しましfuser 443/tcpnetstat -tulpnが、ポート 80 または 443 で何も実行されていません。(コンテナー内のパッケージをインストールする必要がありました)

リスニング アドレスを NIC の IP または 172.0.0.1 に設定しようとしましたが、これも拒否されました。


質問:

  1. ポート 80 と 443 を設定できないのはなぜですか?
  2. 2000 以上のポートで機能するのはなぜですか?
  3. リバース プロキシなしでこれを機能させるにはどうすればよいですか? (リバースプロキシには他にもたくさんの問題があり、このセットアップで回避しようとしています)

設定

docker-compose.yml