解決Mac下 docker 無法 ping 通宿主機(jī)的問題
解決方案
拋棄docker for mac自帶的linux虛擬機(jī)(盡管輕量,但其與OSX通信采用socket文件的方式),使用docker-machine
安裝virtualbox。virtualbox創(chuàng)建后,會(huì)添加一個(gè)虛擬網(wǎng)卡,可以通過ifconfig命令查看。我們實(shí)現(xiàn)的方式,就是利用這個(gè)虛擬網(wǎng)卡。
使用docker-machine創(chuàng)建默認(rèn)linux虛擬機(jī),命令docker-machine create
切換docker環(huán)境,使用eval $(docker-machine env)命令
查看創(chuàng)建的虛擬機(jī)的ip地址:docker-machine ip default或者直接docker-machine ip,假如為192.168.99.100
執(zhí)行route命令,把192.168.99.100作為網(wǎng)關(guān),將docker容器的ip段,路由到此IP上。假如docker容器的網(wǎng)段為172.17.0.0/16,那么使用sudo route -n add -net 172.17.0.0/16 192.168.99.100命令,添加路由信息。
啟動(dòng)一個(gè)docker容器,此次測試使用redis:alpine鏡像:docker run -d redis:alpine。查看運(yùn)行的鏡像IP。并ping測試。如無意外,宿機(jī)目前可以ping同容器了。
補(bǔ)充:
eval "$(docker-machine env -u)"
它將取消DOCKER_*變量。
為了記錄,這是輸出docker-machine env -u:
unset DOCKER_TLS_VERIFY unset DOCKER_HOST unset DOCKER_CERT_PATH unset DOCKER_MACHINE_NAME
補(bǔ)充知識(shí):Mac Docker Host模式不能用
今天在Mac搭建docker中安裝fastdfs, 用host模式啟動(dòng)tracker與storage, 死活不行。
原來是主機(jī)網(wǎng)絡(luò)驅(qū)動(dòng)程序僅適用于Linux主機(jī),并且不支持Docker for Mac,Docker for Windows或Docker EE for Windows Server。
居然還有這個(gè)限制。服了,浪費(fèi)了一天時(shí)間。
以上這篇解決Mac下 docker 無法 ping 通宿主機(jī)的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持本站。
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。