Ich habe einige Docker Container auf zwei verschiedenen Hosts Maschine, MAc OSX und Ubuntu 16.04Warum Docker Container Host nicht wie in/etc/Hosts auf Host-Rechner definiert auflösen?
Taken einer nach dem anderen werden sie korrekt über HTTP von jedem Host-Rechner bedient. Das Problem kommt, wenn ich gehosteten Container auf Ubuntu gegenseitig auflösen muss. (Unter Mac OS X alles funktioniert gut)
Auf beiden Host-Maschinen, die ich bearbeitet haben die/etc/hosts-Datei wie:
192.168.0.13 mycontainer01.dev
192.168.0.13 mycontainer02.dev
192.168.0.13 mycontainer03.dev
(auf dem zweiten Host-Maschine, die ich andere IP klar haben)
Wenn ich mycontainer01.dev von (außerhalb) jeder Host-Maschine anpinge, bekomme ich die IP-Adresse zurück, wie in der hosts-Datei definiert.
Aber wenn ich geben Sie den nginx Behälter:
docker-compose exec nginx bash
auf macosx ping mycontainer01.dev gelingen wird
auf Ubuntu Fehler zurück: $ ping myconteiner01.dev
ping: falsche Adresse
Wenn ja ... warum funktioniert es stattdessen auf meinem MacOSX Host-Rechner? – koalaok
Da MacOS X DNS-Caching verwendet (und Sie müssen es nach der Bearbeitung von/etc/hosts unter MacOS X löschen): https://www.tekrevue.com/tip/edit-hosts-file-mac-os-x/ Unter Linux (auf den meisten Distributionen) haben Sie nicht DNS-Caching: http://stackoverflow.com/questions/11020027/dns-caching-in-linux –
ok danke. Also gibt es keine Lösung? – koalaok