首页 > 资讯 > 正文

解决Docker中的error during connect异常情况

2020-11-21

刚开始接触Docker,遇到异常问题难免会手忙脚乱。没事的,学习就是这样子,在困难中不断地找到解决问题的方法,贵在坚持,加油!

来了来了,问题来了,不要慌,看下面:

我们正常打开了Docker后执行命令后报出error during connect异常。

后面给出了对应异常错误的解释:

No connection could be made because the target machine actively refused it.(无法连接,因为目标机器主动拒绝它。)这下子我们知道问题在哪了,我们的Docker镜像运行在VirtualBox(Win10家庭版),所以这里的目标机器是VirtualBox的连接出现了问题。

两个解决办法:

打开VirtualBox重启default服务。

然后就可以了。

不想打开VirtualBox也是可以的,执行命令同样可以重启default。

在docker里执行命令:

docker-machine restart default

结果:

出入执行命令都可以顺利执行了。问题解决了,不难,下次遇到要记住了。

补充知识:windows下安装docker后,在docker容器中启动程序,无法通过外部ip:port方式访问

最近在使用容器进行启动开发的项目,但发在使用相同的镜像在linux系统下的容器中启动后,可以通过linux IP:port (映射的端口)和容器IP:port访问,而在windows下不能访问的问题。

有两个解决办法

直接在windows宿主机上访问

可以采用LinuxIP:port的方式访问

在windows中安装docker,实质上是启动了一个Linux虚拟机,在Linux中运行的docker,所以直接使用windowIP:port的方式是访问不到的,这里应该使用虚拟机的IP:映射端口的方式访问。

查询windows docker启动机器的IP地址命令:

docker-machine ip default

一般都为 192.168.99.100

这时使用 192.168.99.100:port 就可以成功访问了

需要在与windows相通的其他机器上访问

当我们需要在与windows相通的其他机器上访问 ,就需要使用windowsIP:port的方式了,这时需要对虚拟机进行配置。

打开VM VirtualBox,1.选择default,右键设置C>2.选择左侧菜单“网络”->3.网卡1中点击“高级”展开C>4.点击端口转发打卡端口转发配置界面

在端口转发规则界面进行配置,点击右侧“+”按钮,进行添加端口转发规则,进行填写名称,主机端口,子系统端口,点击下方OK,进行保存即可。

保存后即可使用windowsIP:主机端口进行访问。(主机端口对应为windows系统端口;子系统端口为Linux虚拟机的端口,即为容器映射的端口,如在docker中启动容器将容器的8181端口映射到8186即-p 8186:8181,则这里子系统端口填写8186)

以上这篇解决Docker中的error during connect异常情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。