私はマシンを通信するためにオープンvSwitch(DPDK付き)を使用しています。私は2つの物理的なPCがあります。 Nginxはその1つとip = 10.10.10.6/24で作業しています。開いているvSwitchとDockerが他のマシンで動作しています。Dockerコンテナと他のマシンとの接続に関する問題
ovs-vsctl add-br br0 -- set bridge br0 datapath_type=netdev
そして私はDPDKドライバを使用している、このコマンドを使用して、物理ポートに1つのポートを追加し、ケーブルでNgnixマシンに接続されている:私は、このコマンドを経由してブリッジを作成
ovs-vsctl add-port br0 dpdk0 -- set Interface dpdk0 \
type=dpdk options:dpdk-devargs=0000:05:00.1
そして割り当てますBR0のIP:この後
ifconfig br0 10.10.10.11 netmask 255.255.255.0 up
私は私の画像を使用してコンテナを作成します。
Dockerfile:このすべての後
ovs-docker add-port br0 eth1 attacker1 --ipaddress=10.10.10.12/24
:私は、次のコマンドを使用してコンテナにポートを割り当てます。この後
docker run --rm -P -it --cap-add NET_ADMIN --name ubuntu1 zkryakgul/ubuntu /bin/bash
:
FROM ubuntu:latest
MAINTAINER Zekeriya Akgul
RUN apt-get update -y && \
apt-get upgrade -y && \
apt-get install -y apache2 iputils-ping iputils-tracepath iproute2 net-tools wget
EXPOSE 80 443 444
し、次のコマンドを使用してコンテナを実行します私のnginxマシンのコンテナとping nginx pinging容器をステップします。
しかし、私がwget 10.10.10.6:80
にしようとすると、コンテナは接続できません。しかし、一方で、私の物理マシン(ip:10.10.10.11)ができます。同じコマンド(wget)を実行すると、10.10.10.6:80からページが取得されます。
私は間違っていますか?
「次回は解決策を見つけるのではなく、言い訳を見つけてください。」あなたの質問は、(@ jwwがコメントされているように)ここから離れた話題なので、違反はしないでください。 –