Humanity

Edit the world by your favorite way

/etc/default/dockerでDOCKER_OPTS指定しないと勝手にGoogle DNSがresolv.confに設定されてるかも

Dockerからこんなログが出ていた。

2014/05/21 01:24:26 Local (127.0.0.1) DNS resolver found in resolv.conf and
containers can't use it. Using default external servers : [8.8.8.8 8.8.4.4]

で、ちょうどZabbix serverをDocker上で動かしてみてたので、
LAN上の各ノードに対して監視の設定を入れてみたら、LANのホストと通信できていない。
調べてみたら上のログの通り、/etc/resolv.confで8.8.8.8と8.8.4.4が使われているため、
ルータ(RTX810)に登録したホスト名(レコード)が引けていなかった。
なので /etc/default/docker で

DOCKER_OPTS="--dns ルータのIPアドレス"

と指定した。*1
てっきりDockerのホスト側と同じ設定が使われるもんだと思っていたのでちょっとびっくりした。

*1:-icc=falseも指定した方がいいかも(あとで)