Ich muss ein paar Zeilen hinzufügen, /etc/hosts
damit meine Web-App in einem Docker-Container funktioniert.
Docker /etc/hosts
ist schreibgeschützt.
Ich versuche, dnsmasq zu verwenden:
AB Ubuntu: 14.04 # ... RUN apt-get install -y -q dnsmasq RUN echo 'listen-address = 127.0.0.1' >> /etc/dnsmasq.conf RUN echo 'resolv-file = / etc / resolv.dnsmasq.conf' >> /etc/dnsmasq.conf RUN echo 'conf-dir = / etc / dnsmasq.d' >> /etc/dnsmasq.conf RUN echo 'user = 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 RUN echo 'address = "/ mydomain / 127.0.6.1"' >> /etc/dnsmasq.d/0hosts RUN-Dienst dnsmasq starten
Ich kann Docker jedoch nicht dazu bringen, meinen DNS-Server zu verwenden:
$ docker --dns = 127.0.0.1 Führen Sie meine / container cat /etc/resolv.conf aus Nameserver 8.8.8.8 Nameserver 8.8.4.4
Was vermisse ich?
Aufbau:
- OS X 10.9.4
- Docker Version 1.1.0, Build 79812e3
- boot2docker Client-Version: v1.1.0, Git-Commit: 7e20d36
domain-name-system
mac-osx
docker
Alexander Gladysh
quelle
quelle
/etc/default/docker
Datei nicht verwendet wird, wenn der Docker-Daemon ausgeführt wird. Sie sollten diedaemon.json
Konfigurationsdatei ändern . Siehe docs.docker.com/engine/reference/commandline/dockerd/…Was mir fehlt, ist, dass ich die Reihenfolge der Optionen und Argumente durcheinander gebracht habe. Wenn ich angeben ,
--dns
nachrun
, funktioniert alles einwandfrei .Doh.
quelle
--dns
Option auch mehrmals verwenden. Zum Beispieldocker run --dns 8.8.8.8 --dns 127.0.0.1 my/container