1.安裝了Window版本的Docker之后,我們啟動(dòng) Docker Quickstart Terminal ,我們會(huì)得到一個(gè)IP,我的為:
192.168.99.100
2.啟動(dòng)一個(gè)mysql鏡像,并獲取這個(gè)鏡像的IP:
在開(kāi)始的時(shí)候,從本機(jī)直接到172.17.0.2是網(wǎng)絡(luò)不通的,但是我們本機(jī)能到 192.168.99.100,172.17.0.2到192.168.99.100也是通的,我們可以在本機(jī)配置一個(gè)到172.17.0.2通過(guò)192.168.99.100的路由:
route add -p 172.17.0.0 mask 255.255.0.0 192.168.99.100
這時(shí)查看路由,看到有了到 172.17.0.0 網(wǎng)絡(luò)段的路由
這時(shí)我們本機(jī)到 172.17.0.2是可以ping通了,之后我們使用 navicat 去連接Dokcer中的mysql容器:
補(bǔ)充知識(shí):docker 使用過(guò)程中出現(xiàn)的 bug
此記錄自己在使用 docker 時(shí),出現(xiàn)的一些 bug,以及自己怎么解決的。 后續(xù)不斷補(bǔ)充使用 docker 遇到的 bug。
bug1,驗(yàn)證 nvidia-docker 是否安裝成功(輸入命令 sudo nvidia-docker run --rm nvidia/cuda nvidia-smi,產(chǎn)生以下錯(cuò)誤)
lab712@lab712:~$ sudo nvidia-docker run --rm nvidia/cuda nvidia-smi
docker: Error response from daemon: OCI runtime create failed: container_linux.go:344: starting container process caused "process_linux.go:424: container init caused \"process_linux.go:407: running prestart hook 1 caused \\\"error running hook: exit status 1, stdout: , stderr: exec command: [/usr/bin/nvidia-container-cli --load-kmods configure --ldconfig=@/sbin/ldconfig.real --device=all --compute --utility --require=cuda>=10.0 brand=tesla,driver>=384,driver<385 --pid=4760 /var/lib/docker/overlay2/2b42e419162d46fad61c0a70cbb7b16c79a8878f2dab1af682dbff4813b57316/merged]\\\\nnvidia-container-cli: requirement error: unsatisfied condition: brand = tesla\\\\n\\\"\"": unknown.
查看自己電腦安裝的鏡像文件,發(fā)現(xiàn)安裝nvidia-docker時(shí),拉取了3個(gè)不同標(biāo)簽(TAG)的 nvidia/cuda,如下圖1所示。顯卡驅(qū)動(dòng)是安裝好的,這里由于我用命令的時(shí)候沒(méi)有指定 nvidia/cuda 的標(biāo)簽(TAG),所以默認(rèn)情況下會(huì)直接調(diào)用標(biāo)簽為latest 。
重新指定標(biāo)簽(TAG)后,輸入命令:nvidia-docker run --rm nvidia/cuda:9.0-base nvidia-smi ,則成功了。結(jié)果如圖2 所示。
以上這篇WIN10系統(tǒng)和Docker內(nèi)部容器IP互通方式就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。