2017-04-25 9 views
0

最近Docker Version 17.04-CEでホスト名を解決していて、何が原因であるのか不明です。私は現在、実行中のオプションを使用しないようにドッカー設定をしていますが、最近、ドメイン名(IPV4はうまく動作し、外部IPにpingできます)経由で接続すると、コンテナはGoogleや他のホストにアクセスできなくなります。Docker DNSに外部サーバが表示されない

私はサービスのdocker-compose.ymlにbandaidを追加しましたが、他のdocker-composeファイル(laradockなど)を使用しているときは、外部にpingまたはcurlできませんサーバー。私はまだ他のドッカーのインスタンスをカールすることができ、私はイントラネット内のサーバを実際にカールすることができます。コンテナ内で手動で/etc/resolv.confを変更することはできますが、それをそのまま使用する必要があります。また、私がdockerを使ってコンテナを通常起動すると、container-bashの機能が期待通りに動作します。

ドッキングウィンドウ-COMPOSEは、(アップドッキングウィンドウ-構成-d nginxのmysqlの& & execのワークスペースの猫の/etc/resolv.confをドッキングウィンドウ-構成)のresolv.confを走った -

search machines.redacted.ca it.redacted.ca services.redacted.ca 
apps.redacted.ca 
nameserver 127.0.0.11 
options ndots:0 

バニラドッキングウィンドウのresolv.confのが動作しません(ドッカラン-itでmysqlのping google.ca) - 私のために働いFINE

# Generated by resolvconf 
search machines.redacted.ca it.redacted.ca services.redacted.ca 
apps.redacted.ca 
nameserver 192.168.5.5 #Internal DNS server 
nameserver 8.8.8.8 

答えて

0

、それは私の内部DNSサーバーがブロック再帰的なDNSクエリだったことになってしまいました。ドックをデバッグモードで設定し、ドッカーとdnsサーバーのログを監視してバグを追跡しました。 DockerはDNSクエリをうまく送信していたようですが、Bind9は再帰クエリを拒否するエラーを吐き出していたようです。私はその問題を捜して、下の設定を変更し、すべてが再び働いた。私はbind9の設定に次の行を追加しました。

私の同僚の1人が同じmethodoligyを使用していましたが、クエリがうまく機能していました。彼は別のディストリビューションを運営していましたが、古いバージョンのドッカーとドッカーは作っています。

Named.conf.options:

options { 
    ... 




    allow-recursion { all; }; 

} 
関連する問題