Preciso adicionar algumas linhas para /etc/hosts
que meu aplicativo Web funcione dentro de um contêiner do Docker.
O Docker /etc/hosts
é somente leitura.
Estou tentando usar o dnsmasq:
FROM ubuntu: 14.04 # ... Execute o apt-get install -y -q dnsmasq Executar eco 'endereço de escuta = 127.0.0.1' >> /etc/dnsmasq.conf EXECUTAR echo 'resolv-file = / etc / resolv.dnsmasq.conf' >> /etc/dnsmasq.conf EXECUTAR echo 'conf-dir = / etc / dnsmasq.d' >> /etc/dnsmasq.conf EXECUTAR eco 'usuário = root' >> /etc/dnsmasq.conf RUN echo 'nameserver 8.8.8.8' >> /etc/resolv.dnsmasq.conf RUN echo 'nameserver 8.8.4.4' >> /etc/resolv.dnsmasq.conf EXECUTAR echo 'address = "/ meudomínio / 127.0.6.1"' >> /etc/dnsmasq.d/0hosts Serviço RUN dnsmasq start
No entanto, não consigo que o Docker use meu servidor DNS:
$ docker --dns = 127.0.0.1 execute meu / container cat /etc/resolv.conf nameserver 8.8.8.8 nameserver 8.8.4.4
o que estou perdendo?
Configuração:
- OS X 10.9.4
- Docker versão 1.1.0, compilação 79812e3
- Versão do cliente boot2docker: v1.1.0, Git commit: 7e20d36
domain-name-system
mac-osx
docker
Alexander Gladysh
fonte
fonte
/etc/default/docker
arquivo não é usado quando o daemon do docker é executado; você deve modificar odaemon.json
arquivo de configuração. Veja docs.docker.com/engine/reference/commandline/dockerd/…O que sinto falta é que errei a ordem das opções e argumentos. Se eu especificar
--dns
depoisrun
, tudo funcionará bem.Doh.
fonte
--dns
opção mais de uma vez. Por exemplodocker run --dns 8.8.8.8 --dns 127.0.0.1 my/container