剛開始接觸Docker,遇到異常問題難免會手忙腳亂。沒事的,學(xué)習(xí)就是這樣子,在困難中不斷地找到解決問題的方法,貴在堅持,加油!
來了來了,問題來了,不要慌,看下面:

我們正常打開了Docker后執(zhí)行命令后報出error during connect異常。
后面給出了對應(yīng)異常錯誤的解釋:
No connection could be made because the target machine actively refused it.(無法連接,因?yàn)槟繕?biāo)機(jī)器主動拒絕它。)這下子我們知道問題在哪了,我們的Docker鏡像運(yùn)行在VirtualBox(Win10家庭版),所以這里的目標(biāo)機(jī)器是VirtualBox的連接出現(xiàn)了問題。
兩個解決辦法:
打開VirtualBox重啟default服務(wù)。

然后就可以了。
不想打開VirtualBox也是可以的,執(zhí)行命令同樣可以重啟default。
在docker里執(zhí)行命令:
docker-machine restart default
結(jié)果:

出入執(zhí)行命令都可以順利執(zhí)行了。問題解決了,不難,下次遇到要記住了。
補(bǔ)充知識:windows下安裝docker后,在docker容器中啟動程序,無法通過外部ip:port方式訪問
最近在使用容器進(jìn)行啟動開發(fā)的項(xiàng)目,但發(fā)在使用相同的鏡像在linux系統(tǒng)下的容器中啟動后,可以通過linux IP:port (映射的端口)和容器IP:port訪問,而在windows下不能訪問的問題。
有兩個解決辦法
直接在windows宿主機(jī)上訪問
可以采用LinuxIP:port的方式訪問
在windows中安裝docker,實(shí)質(zhì)上是啟動了一個Linux虛擬機(jī),在Linux中運(yùn)行的docker,所以直接使用windowIP:port的方式是訪問不到的,這里應(yīng)該使用虛擬機(jī)的IP:映射端口的方式訪問。
查詢windows docker啟動機(jī)器的IP地址命令:
docker-machine ip default
一般都為 192.168.99.100

這時使用 192.168.99.100:port 就可以成功訪問了
需要在與windows相通的其他機(jī)器上訪問
當(dāng)我們需要在與windows相通的其他機(jī)器上訪問 ,就需要使用windowsIP:port的方式了,這時需要對虛擬機(jī)進(jìn)行配置。
打開VM VirtualBox,1.選擇default,右鍵設(shè)置–>2.選擇左側(cè)菜單“網(wǎng)絡(luò)”->3.網(wǎng)卡1中點(diǎn)擊“高級”展開–>4.點(diǎn)擊端口轉(zhuǎn)發(fā)打卡端口轉(zhuǎn)發(fā)配置界面

在端口轉(zhuǎn)發(fā)規(guī)則界面進(jìn)行配置,點(diǎn)擊右側(cè)“+”按鈕,進(jìn)行添加端口轉(zhuǎn)發(fā)規(guī)則,進(jìn)行填寫名稱,主機(jī)端口,子系統(tǒng)端口,點(diǎn)擊下方OK,進(jìn)行保存即可。
保存后即可使用windowsIP:主機(jī)端口進(jìn)行訪問。(主機(jī)端口對應(yīng)為windows系統(tǒng)端口;子系統(tǒng)端口為Linux虛擬機(jī)的端口,即為容器映射的端口,如在docker中啟動容器將容器的8181端口映射到8186即-p 8186:8181,則這里子系統(tǒng)端口填寫8186)

以上這篇解決Docker中的error during connect異常情況就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。