2017-09-26 24 views
0

我對Docker撰寫的容器網絡有點困惑。如果我沒有弄錯,它的工作方式將創建一個新的橋接網絡,並將所有的容器添加到這個新的橋接網絡。與真實生活橋相似,每個容器將能夠訪問彼此的本地IP地址。此外,橋接網絡提供了一個DNS服務,允許您按名稱引用容器。 假設這一切都正確,我沒有得到的部分是如何從容器內訪問和使用此DNS服務?我無法弄清容器與DNS服務對話的機制如何驗證docker撰寫dns的行爲?

回答

0

內部DNS服務器可在127.0.0.11:53處獲得。您需要使用命令將其檢出。

apt install -y dnsutils 

然後你就可以運行該命令,並通過其名稱查詢容器容器

$ dig web @127.0.0.11 

; <<>> DiG 9.9.5-9+deb8u14-Debian <<>> web @127.0.0.11 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48886 
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 

;; QUESTION SECTION: 
;web.    IN A 

;; ANSWER SECTION: 
web.   600 IN A 172.20.0.4 

;; Query time: 0 msec 
;; SERVER: 127.0.0.11#53(127.0.0.11) 
;; WHEN: Tue Sep 26 09:28:40 UTC 2017 
;; MSG SIZE rcvd: 40