Je viens d'installer une nouvelle Ubuntu 14.04 et je veux utiliser Docker pour exécuter mes anciennes choses nécessitant 12.04. Le DNS à l'intérieur de Docker ne fonctionne pas.
Le resolv.conf de mon ordinateur portable ressemble à:
nameserver 127.0.0.1
Ce qui ne fonctionne pas avec Docker, apparemment. Il essaie donc de définir les serveurs de noms sur 8.8.8.8 et 8.8.4.4; quand je fais
$ sudo docker run -i -t ubuntu /bin/bash
Ça dit:
WARNING: 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]
Et bien sûr, dans l'instance de Docker, resolv.conf ressemble à:
nameserver 8.8.8.8
nameserver 8.8.4.4
Je peux cingler avec succès les deux à partir de l'instance Docker. Cependant, il n'y a pas de DNS (par exemple, ping google.com
échec).
Sortie ifconfig dans Docker:
eth0 Link encap:Ethernet HWaddr aa:e9:9f:83:9d:92
inet addr:172.17.0.2 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::a8e9:9fff:fe83:9d92/64 Scope:Link
UP BROADCAST RUNNING MTU:1500 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:648 (648.0 B) TX bytes:738 (738.0 B)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Maintenant quoi?