Sam w sobie DNS raczej nigdy nie testowałem, ale kiedy potrzebowałem jakiegoś curl wewnątrz kontenera do hosta w sieci lokalnej, to używałem tego tak:
Kod
extra_hosts:
- "mysql-test:192.168.0.24"
To jest przykład z compose, w przypadku samego dockera wyglądało by to tak:
Kod
docker run --add-host="mysql-test:192.168.0.24"
To zwyczajnie dodaje do /etc/hosts wpis ip:host, bo normalnie gdybyś ręcznie coś dodał do tego pliku to restart kontenera zwyczajnie by ten wpis usunął, bo cały plik /etc/hosts jest wypełniany przez dockera, w ten sposób tworzy "linki" do innych kontenerów. Jest to w sumie jeden z elementów sieci dockera, czyli możliwość łączenia z innymi zasobami/kontenerami, które są zlokalizowane na innych hostach/sieciach.
Dokumentacja dla compose:
https://docs.docker.com/compose/compose-file/#extra-hostsDokumentacja dla run:
https://docs.docker.com/engine/reference/ru...etwork-settingsTak jak już ci wspominałem, najlepiej jest używać docker-compose, bo podmiana konfiguracji nie wiąże się z skasowaniem samego kontenera, no i można taką konfiguracje trzymać na repo i współdzielić z innymi. U mnie w firmie każde repo teraz ma swój plik docker-compose.yml

EDIT: w sumie przypomniałem sobie że jest wiele narzędzi "service discovery" tyle że jeszcze żadnego nie testowałem, z racji tego że wszystko nad czym pracuje musi być najbardziej przenośne jak to tylko możliwe. Ale większość narzędzi o których czytałem, to były narzędzia które działały na zasadzie bardzo podobnej do wpisania takiego hosta do konfiguracji, z tą różnicą, że stawiałeś sobie taką usługę powiedzmy etcd, do której inne kontenery się odwoływały i pobierały z niej konfiguracje, w ten sposób na jakiejś maszynie restartując kontener, lub dodając jakąś maszynę do swojego klastra, pozostałe maszyny miały już tą konfiguracje, bo ona sama w sobie jest scentralizowana (coś jakby). Jest wiele różnych narzędzi, wystarczy wrzucić
docker service discovery i dostaniesz pierdylion wyników, bo zanim libnetwork dockera będzie stabilny produkcyjnie (póki co jest rc) do tworzenia sieci kontenerów pomiędzy hostami, to ludzie zdążyli napisać wiele swoich narzędzi. Osobiście wolę natywne rozwiązania, co by polegać na jednym narzędziu, a nie dziesiątkach zewnętrznych, więc wpisuje konfiguracje ręcznie.