Dzień dobry,
mam dwa kontenery które nazywają się A i B
Jak zrobić teraz tak aby te dwa kontenery komunikowały się że sobą za pomocą nazwy "localhost"?
Powiedzmy że w kontenerze A jest aplikacja webowa, a w B jest baza MYSQL.
Normalnie musiałbym ustawić to tak że kontener A komunikuje się z kontenerem B przykładowo w takiej postaci: B:3306, ale ja chce aby kontener A komunkował się z kontenerem B za pomocą hostname:3306, czyli ma to wyglądać tak jakby zawartość Frontedu i Backendu była na tym samym hoście.
Mam nadzieje że wyjaśniłem mój problem :)
Pozdrawiam,
Łukasz
Dostęp pomiędzy kontenerami po nazwie sieciowej (localhost)
- Rejestracja: dni
- Ostatnio: dni
- Postów: 283
- Rejestracja: dni
- Ostatnio: dni
- Postów: 36
Wystarczy uruchomić je w tej samej sieci - stworzysz ją można za pomocą docker network create i później podać jej nazwę podczas uruchamiania kontenera przy docker run z użyciem opcji --network.
DNS powstają na podstawie nadanych nazw kontenerów (opcja --name przy docker run). Alternatywnie, gdy korzystasz z Docker Compose, dodatkowo możesz używać jako DNS nazw serwisów z definicji (wtedy też nie musisz sam tworzyć sieci, ponieważ Docker Compose stworzy ją automatycznie, umieści w niej podane kontenery i nie będzie to domyślny bridge).
- Rejestracja: dni
- Ostatnio: dni
- Postów: 283
@DonStefano: mam jej teraz w jednej sieci tylko komunikują się obecnie po nazwach kontenerów, tak jakby to były oddzielne komputery.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 3581
Ale tak działa Docker. To mają być jakby oddzielne komputery. Inny adres IP w sieci wewnętrznej itd.
Określ może co chcesz uzyskać?
Docker nie działa jak PC, że instalujesz apkę następną i ona jest na localhost pod innym portem.
- Rejestracja: dni
- Ostatnio: dni
- Postów: 283
@jurek1980: No właśnie a ja chciałem aby to działało wszystko pod jedną nazwą localhost, w tytule źle napisałem zamiast hostname miało być localhost :)
- Rejestracja: dni
- Ostatnio: dni
- Postów: 1620
Tak jak zostało Ci wyżej polecone, Docker Compose jest narzędziem do „sklejania” kontenerów w jedno.
Warto też przy Twoim przypadku użycia rozważyć w ogóle rezygnację z konteneryzacji, skoro zdaje się bardziej przeszkadzać, niż pomagać.