Necesito agregar algunas líneas /etc/hosts
para que mi aplicación web funcione dentro de un contenedor Docker.
Docker's /etc/hosts
es de solo lectura.
Estoy tratando de usar dnsmasq:
DE ubuntu: 14.04 # ... EJECUTAR apt-get install -y -q dnsmasq EJECUTAR echo 'listen-address = 127.0.0.1' >> /etc/dnsmasq.conf EJECUTAR echo 'resolv-file = / etc / resolv.dnsmasq.conf' >> /etc/dnsmasq.conf EJECUTAR echo 'conf-dir = / etc / dnsmasq.d' >> /etc/dnsmasq.conf EJECUTAR echo 'usuario = root' >> /etc/dnsmasq.conf EJECUTAR echo 'nameserver 8.8.8.8' >> /etc/resolv.dnsmasq.conf EJECUTAR echo 'nameserver 8.8.4.4' >> /etc/resolv.dnsmasq.conf EJECUTAR echo 'address = "/ mydomain / 127.0.6.1"' >> /etc/dnsmasq.d/0hosts Ejecutar servicio dnsmasq start
Sin embargo, no puedo hacer que Docker use mi servidor DNS:
$ docker --dns = 127.0.0.1 ejecutar mi / container cat /etc/resolv.conf servidor de nombres 8.8.8.8 servidor de nombres 8.8.4.4
¿Qué me estoy perdiendo?
Configuración:
- OS X 10.9.4
- Docker versión 1.1.0, compilación 79812e3
- Versión del cliente boot2docker: v1.1.0, Git commit: 7e20d36
domain-name-system
mac-osx
docker
Alexander Gladysh
fuente
fuente
/etc/default/docker
archivo no se utiliza cuando se ejecuta Docker Daemon, debe modificar eldaemon.json
archivo de configuración. Ver docs.docker.com/engine/reference/commandline/dockerd/…Lo que me falta es que estropeé el orden de opciones y argumentos. Si especifico
--dns
despuésrun
, todo funciona bien.Doh
fuente
--dns
opción más de una vez. Por ejemplodocker run --dns 8.8.8.8 --dns 127.0.0.1 my/container