200

私はそれで問題なく動作していましたが、現在は停止しています。次のコマンドを無駄に試しました:

docker run -dns 8.8.8.8 base ping google.com

docker run base ping google.com

sysctl -w net.ipv4.ip_forward=1- ホストとコンテナの両方

私が得るのはすべてですunknown host google.com。Docker バージョン 0.7.0

何か案は?

PSufwも無効化

4

31 に答える 31

138

次のアドバイスに従って修正します。

[...] すべてをリセットしてみることができますか?

pkill docker
iptables -t nat -F
ifconfig docker0 down
brctl delbr docker0
docker -d

Docker にブリッジを再作成させ、すべてのネットワーク ルールを再初期化させます。

https://github.com/dotcloud/docker/issues/866#issuecomment-19218300

インターフェイスが何らかの理由で「ハング」したようです。

最近のバージョンの docker の更新:

上記の答えはまだあなたのために仕事を成し遂げるかもしれませんが、この答えが投稿されてからかなりの時間が経ち、ドッカーはより洗練されたものになっているので、すべてをマングルする前にまずこれらを試してくださいiptables.

sudo service docker restartまたは (upstart を使用しない Linux ディストリビューションを使用している場合)sudo systemctl restart docker

于 2013-12-06T18:27:09.713 に答える
7

私は使用していてDOCKER_OPTS="--dns 8.8.8.8"、後で発見しましたが、私のコンテナーはインターネットに直接アクセスできませんでしたが、会社のイントラネットにはアクセスできました。私は次のように変更DOCKER_OPTSしました:

DOCKER_OPTS="--dns <internal_corporate_dns_address"

DNSのIPアドレスまたはFQDNに置き換えinternal_corporate_dns_address、dockerを使用して再起動しました

sudo service docker restart

次に、コンテナを生成し、インターネットにアクセスできることを確認しました。

于 2016-06-15T09:18:28.363 に答える
6

これが私のコンテナの1つでランダムに発生したとき、私は困惑しましたが、他のコンテナは問題ありませんでした. コンテナーは少なくとも 1 つの非内部ネットワークに接続されていたため、Compose定義に問題はありませんでした。VM / docker デーモンを再起動しても解決しませんでした。pingまた、コンテナは外部 IPさえ取得できなかったため、DNS の問題ではありませんでした。私にとってそれを解決したのは、ドッカーネットワークを再作成することでした。私の場合、docker-compose down && docker-compose upうまくいきました。

作成する

これにより、すべてのコンテナのすべてのネットワークが強制的に再作成されます。

docker-compose down&&docker-compose up

スウォームモード

サービスを削除して再作成するだけで、サービスのネットワークが再作成されると思います。

docker service rm some-service

docker service create ...

コンテナのネットワークが外部の場合

そのサービスの外部ネットワークを削除して再作成するだけです。

docker network rm some-external-network

docker network create some-external-network

于 2019-02-24T04:37:05.447 に答える
4

私にとっては、ホストのファイアウォールでした。ホストのファイアウォールで DNS を許可する必要がありました。また、ホストのファイアウォール設定を変更した後、docker を再起動する必要がありました。

于 2015-05-01T21:44:36.270 に答える
3

他の回答では、docker0インターフェイス (ブリッジ) が問題の原因である可能性があると述べられています。Ubuntu 20.04 では、インターフェースに IP アドレスが欠落していることに気付きました (で確認してip addr show dev docker0ください)。Docker だけを再起動しても解決しませんでした。ブリッジ インターフェイスを手動で削除する必要がありました。

sudo ip link delete docker0
sudo systemctl restart docker
于 2021-08-16T09:01:01.070 に答える
3

dns オプションを使用して docker を起動した可能性があります--dns 172.x.x.x

同じエラーが発生し、オプションを削除しました/etc/default/docker

台詞:

# Use DOCKER_OPTS to modify the daemon startup options.
DOCKER_OPTS="--dns 172.x.x.x"
于 2016-05-03T14:47:00.427 に答える
2

OSX を使用している場合は、Docker のインストール後にマシンの再起動が必要になる場合があります。これは時々問題になっています。

于 2016-03-29T00:30:45.950 に答える
2

Windows(8.1)では、(taskmgrを介して)virtualboxインターフェースを強制終了し、問題を解決しました。

于 2016-10-27T15:57:19.637 に答える
0

Just run

sudo apt install bridge-utils
于 2021-05-01T08:56:04.320 に答える