Nega proksi konteyneri DNS konteyneridan avtomatik foydalanmaydi
Docker xostini bo'lishish, tarmoqni bo'lishish va hal qiluvchini tanlash uch xil narsa. DNS so'rovini proksi ichidan kuzatib boring.
Proksi va DNS serverni bitta Docker xostida ishga tushirish ularning DNS yo'llarini bog'lamaydi. Uchta alohida munosabat muhim:
- Tarmoqqa yetib borish. Alohida Compose loyihalari odatda alohida standart tarmoqlarga ega. Xizmatlarni mos umumiy tarmoqqa joylashtiring, yo bir loyiha ichida, yo loyihalar orasida aniq umumiy bo'lgan tarmoq orqali.
- Xizmatni aniqlash. Maxsus Docker tarmog'ining ichki DNS konteyner nomlarini hal qila oladi. Bu ilovaga qo'shnisini topishga imkon beradi; lekin o'sha qo'shni avtomatik ravishda uning DNS hal qiluvchisi bo'lmaydi.
- Hal qiluvchini tanlash. Proksi konteyneri ichida ishlatiladigan hal qiluvchini aniqlang. Compose'ning
dnsmaydoni DNS server manzillarini qabul qiladi. Ilovada hal qilinadigandns.localkabi nom uni bu maydon uchun haqiqiy qiymatga aylantirmaydi.
So'rovni proksi konteyneridan uning sozlangan hal qiluvchi manziligacha kuzatib boring. O'sha manzilda marshrut va DNS tinglovchisi borligini tasdiqlang. Xost porti 53 ni e'lon qilish xost tomonida kirish yo'lini yaratadi; lekin konteynerlarga undan foydalanishni aytmaydi. Tarmoqni bo'lishadigan konteynerlar buning o'rniga to'g'ridan-to'g'ri muloqot qilishi mumkin.
Agar konfiguratsiya DNS konteynerining manziliga havola qilsa, uni mos IPAM konfiguratsiyasi ostida barqaror saqlang. Kechagi konteynerdan ko'chirilgan dinamik ajratilgan manzil qayta yaratishda muvaffaqiyatsiz bo'lishi mumkin. Hal qiluvchining yuqori oqim yo'lini ham tekshiring: javobsiz so'rovlarni o'ziga qaytarish yetib bo'lmaydigan hal qiluvchidan boshqa nosozlik tug'diradi.
Nihoyat, manzilni kim hal qilishini aniqlang. CONNECT nomini hal qiladigan HTTP proksi bu konteyner yo'lidan foydalanishi mumkin; mahalliy hal qiladigan SOCKS mijozi foydalanmasligi mumkin. Xostdagi qidiruv xost yo'lini isbotlaydi, proksi jarayoninikini emas.