Af hverju proxy-gámur notar ekki DNS-gáminn sjálfkrafa
Að deila Docker-hýsingu, deila neti og velja leysir eru þrjár mismunandi ráðstafanir. Fylgdu DNS-fyrirspurninni innan frá proxynu.
Að keyra proxy og DNS-þjón á sama Docker-hýsi tengir ekki DNS-slóðir þeirra. Þrír aðskildir tengslar skipta máli:
- Netnálægð. Aðskilin Compose-verkefni hafa venjulega aðskilin sjálfgefin net. Setjið þjónusturnar á viðeigandi deilt net, annaðhvort innan eins verkefnis eða gegnum net sem er skýrt deilt milli verkefna.
- Uppgötvun þjónustu. Innbyggða DNS sérsniðs Docker-nets getur leyst gámheiti. Það leyfir forriti að uppgötva nágranna; en það velur ekki sjálfkrafa þann nágranna sem DNS-leysi sinn.
- Val leysis. Greinið leysinn sem notaður er inni í proxy-gámnum. Reiturinn
dnsí Compose tekur við vefföngum DNS-þjóna. Heiti eins ogdns.localsem leysist í forriti gerir það ekki að gildi fyrir þann reit.
Fylgdu fyrirspurninni frá proxy-gámnum að stilltu leysiv-effninu. Staðfestið að leið og DNS-hlustari séu á því veffang. Að birta hýsileg tölvuport 53 býr til aðgangsleið á hýsilega hlið; það segir gámum ekki að nota hana. Gámur sem deila neti geta í staðinn átt samskipti beint.
Ef stillingin vísar í veffang DNS-gámsins, haldið því stöðugu undir samhæfðri IPAM-stillingu. Veffang sem er úthlutað kvikt og afritað úr gámnum í gær getur mistekist við endursköpun. Skoðið einnig uppstreymisleið leysisins: að senda ósvaraðar fyrirspurnir aftur til hans sjálfs veldur annarri bilan en óaðgengilegur leysir.
Að lokum, greinið hver leysir áfangastaðinn. HTTP-proxy sem leysir CONNECT-heiti getur notað þessa gámleið; SOCKS-biðlari sem leysir staðbundið kann að gera það ekki. Uppfletting á hýsinu sannar leið hýsisins, ekki leið proxy-ferlisins.