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

刚开始接触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,右键设置–>2.选择左侧菜单“网络”->3.网卡1中点击“高级”展开–>4.点击端口转发打卡端口转发配置界面

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

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

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

(0)

相关推荐

  • docker 在容器外执行某个容器内的某个命令操作

    有时候我们想执行某个容器的某条命令,但又不想进入容器内.那该怎么办? 于是脚本可以这样写 #!/bin/bash DOCKER_ID=62f3f40ab240 sudo docker exec -it $DOCKER_ID /bin/bash -c 'cd /packages/detectron && python tools/train.py' done 补充知识:解决docker容器与宿主机无缝调用shell命令问题 我就废话不多说了,大家看解决方法吧~ nsenter -t 1 -m

  • Docker容器时区调整操作

    如何检查Docker容器时区是否与宿主机一致? 1.进入宿主机, 执行以下命令: # 查看宿主机时间 [root@localhost ~]# date 2018年 06月 27日 星期三 22:42:44 CST 2.进入到容器中,执行以下命令 # 查看容器时间 root@lksjoid909090:/#date Wed Jul 27 14:43:31 UTC 2018 CST应该是指(China Shanghai Time,东八区时间) UTC应该是指(Coordinated Universa

  • Docker 使用nsenter工具进入容器的操作

    在使用Docker容器的时候,利用nsenter工具会比较方便,如果我们的系统没有的话,那就需要我们自己来安装了 1.首先访问该网址找到最新版本的nsenter工具 2.然后下载nsenter工具的源码到我们的主机上 输入命令: # wget https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.32/util-linux-2.32.tar.gz 3.解压.tar.gz包 # tar -xzvf util-linux-2.32

  • docker 连接宿主Mysql操作

    今天公司项目要配置docker,顺利在windows上装完了之后,发现连接不上本地的mysql, 一直报权限问题或者地址错误的问题 最后发现 1:地址按照下面这个ipv4来 2:要在宿主Mysql将localhost权限打开,命令如下 mysql -u root -pvmwaremysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user;

  • 解决docker run 或者 docker restart 启动镜像就自动退出

    执行命令:docker run --name centos8 -d centos /bin/bash,通过docker ps查看正在运行中容器,找不到centos8. 通过docker ps -a查看发现,centos8容器已经处于停止状态了 [root@MiWiFi-R4A-srv server]$ docker run --name centos8 -d centos /bin/bash a770630ca865b3c3346a321a383f302ed22af9281be8482f4f4d

  • 利用nexus作为私库进行代理docker,进行上传和下载镜像操作

    一.nexus的配置 1.创建docker proxy 用于从外网仓库中拉取镜像至本地仓库中. 点击"create Repository",选择docker(proxy)进行创建 填写参数 点击"create repository" 创建 2.创建docker hosted 用于将自己的镜像上传至私库 点击"create Repository",选择docker(hosted)进行创建 填写参数: 点击"create repositor

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

    刚开始接触Docker,遇到异常问题难免会手忙脚乱.没事的,学习就是这样子,在困难中不断地找到解决问题的方法,贵在坚持,加油! 来了来了,问题来了,不要慌,看下面: 我们正常打开了Docker后执行命令后报出error during connect异常. 后面给出了对应异常错误的解释: No connection could be made because the target machine actively refused it.(无法连接,因为目标机器主动拒绝它.)这下子我们知道问题在哪了

  • 解决Element中el-date-picker组件不回填的情况

    1.问题描述 当我们在实用ElementUI组件完成项目的时候可能会遇到这样的需求,比如: 新建一个活动,需要定义活动的时间范围: 因此我们在新建活动的操作过程中需要选择一段时间区间以及活动名称等信息提交,新建完成: 网页上出现了新建好的活动,其他人想查看详细信息,打开页面,发现时间区间并没有实现回填! 2.问题分析 时间信息没有回填,首先要检查,后台数据返回情况以及页面上字段信息是否有差异等细节: 如果没有以上的情况,那就是我碰到的这种情况了, 后端数据返回没有差异,而且页面字段也没有错,其他

  • 解决docker中mysql时间与系统时间不一致问题

    最近在Docker中装mysql时,发现数据库时间与系统时间相差8个小时. linux服务器时间: 进入mysql,输入date如下 发现两者时区不同.因为mysql容器是在docker中安装的,所以mysql的时间不对应该是宿主docker导致的. 查询资料发现,docker的默认时区是0区,其实这会对安装的容器造成不少麻烦,比如执行日志的记录不准确等. 有如下两种方式解决: 方法一:复制主机的localtime docker cp /etc/localtime [容器ID或者NAME]:/e

  • 解决docker中ifconfig不可用的问题

    最近在学习docker的过程中在docker容器中使ifconfig查询网络情况时发现 出现了command not found的情况,经过查询资料得知道docker上的镜像都是以最轻量级的安装方式,一些命令都需要自己去安装. 解决方法: yum install net-tools 如果出现yum不可用可使用apt-get install net-tools解决 补充:docker容器中安装vim .telnet.ifconfig命令 在使用docker容器时,有时候里边没有安装vim,敲vim

  • 分析解决Python中sqlalchemy数据库连接池QueuePool异常

    目录 数据库相关错误的解决办法 错误一:数据库连接池超过限制 错误二:数据库事务未回滚 数据库相关错误的解决办法 错误一:数据库连接池超过限制 SqlAlchemy QueuePool limit overflow 造成连接数超过数据库连接池的限制,有两方面的原因,第一个是由于数据库连接池数比较小,因此当连接数稍微增加的时候就会超过限制,另一个原因就是在使用完数据库连接后未能即使释放,最后造成数据连接数持续增加从而超出数据库连接池的限制,所以我们也可以从这两个方面来解决这个问题,但是根本上还是得

  • 解决docker run后容器出现Exited (0)情况的问题

    自己做了个centos7的openresty的Dockerfile,build之后 docker run -d -p 801:80 openresty:1.19 /usr/local/openresty/nginx/sbin/nginx 之后docker ps -a出现如下情况 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 9dee2d04b3b5 openresty:1.19 "/usr/local/openrest-"

  • java中double类型运算结果异常的解决方法

    问题: 对两个double类型的值进行运算,有时会出现结果值异常的问题.比如: System.out.println(19.99+20); System.out.println(1.0-0.66); System.out.println(0.033*100); System.out.println(12.3/100); 输出: 39.989999999999995 0.33999999999999997 3.3000000000000003 0.12300000000000001 解决方法: J

  • 查看docker中运行的JVM参数问题及解决方法

    方法一.jcmd命令: 1.jps获取java的线程id 2.jcmd pidVM.flags获取 51152:-XX:CICompilerCount=3 -XX:InitialHeapSize=526385152 -XX:MaxHeapSize=1073741824 -XX:MaxNewSize=357564416 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=175112192 -XX:OldSize=351272960 -XX:+UseCompresse

  • 详解docker中使用systemctl启动服务报错的解决办法

    docker版本: [root@localhost gae_proxy]# docker version Client: Version: 1.10.3 API version: 1.22 Package version: docker-common-1.10.3-46.el7.centos.10.x86_64 Go version: go1.6.3 Git commit: d381c64-unsupported Built: Thu Aug 4 13:21:17 2016 OS/Arch: l

  • 详解Java删除Map中元素java.util.ConcurrentModificationException”异常解决

    今天在使用map并需要根据某些条件删除map元素时,自然而然想到调用Map中的remove(Object key)函数进行删除,代码如下: //遍历map,如果key<5,那么就删除此元素. Map<Integer, Integer> users = new LinkedHashMap<Integer, Integer>(); for (Map.Entry<Integer,Integer> entry : users.entrySet()){ for (int i

随机推荐