解决Windows10下无法对docker容器进行端口访问(端口映射的问题)

解决Windows10下无法对docker容器进行端口访问(端口映射的问题)

问题详情

  • 在Windows10系统服务器中安装了docker和docker-compose
  • 并尝试在其中运行Nginx服务,映射也做好
  • 问题:在主机的浏览器中,打开localhost:port无法访问对应的Web服务。

问题解析

  • 原因:docker是运行在Linux上的,在Windows中运行docker,实际上还是在Windows下先安装了一个Linux环境,然后在这个系统中运行的docker。
  • 也就是说,服务中使用的localhost指的是这个Linux环境的地址,而不是我们的宿主环境Windows10。

解决办法

  • 启动docker命令行窗口
  • 输入命令
      docker-machine ip default
  • Linux的ip地址,一般情况下这个地址是192.168.99.100
  • 然后在Windows的浏览器中,输入 http://IP:port 即可启用(http://192.168.99.100:8069

原文地址:https://www.cnblogs.com/chenshuquan/p/10557505.html

时间: 2024-10-12 15:31:40

解决Windows10下无法对docker容器进行端口访问(端口映射的问题)的相关文章

如何让不同主机中docker容器可以相互访问

我们都知道同一台主机中的docker容器可以相互访问,那么不同主机中的docker容器间是否可以相互访问呢?答案是可以的,解决思路是在主机中把另外主机上docker容器的网段加入到路由表中. 现有主机A 192.168.124.51,主机B 192.168.124.55,具体步骤如下: 修改一台主机docker容器使用的网段(默认是172.17.x.x),如何修改请看上一篇. 假设已经修改好docker网段,例如主机A中docker容器使用10.1.x.x网段,主机B中docker使用172.1

Docker容器——镜像管理,端口映射,容器互联

docker镜像的分层  Dockerfile 中的每个指令都会创建一个新的镜像层: 镜像层将会被缓存和复用: 当 Dockerfile 的指令修改了,复制的文件变化了,或者构建镜像时指定的变量不同了,对应的镜像层缓存就会失效: 某一层的镜像缓存失效之后,它之后的镜像层缓存都会失效: 镜像层是不变的,如果在某一层中添加一个文件,然后在下一层中删除它,则镜像中依然包含该文件 docker镜像 是应用发布的标准格式 可支撑一个docker容器的运行 docker镜像的创建方法 基于已有镜像创建 基于

windows10下安裝docker

官方安装文档:https://docs.docker.com/docker-for-windows/install/ 一.windows安装docker 系统要求: ①.Windows 10 64bit: Pro, Enterprise or Education (1607 Anniversary Update, Build 14393 or later). 注意:Docker对win10版本号也有要求,可以在命令行中输入cmd命令,即可显示当前windows的版本号. ②.BIOS支持虚拟化.

解决Windows10下80端口被PID为4的System占用的问题

一.背景 最近由于好奇心,更新了windows10系统,感觉上手还蛮快,而且体验还不错,但是在IDEA中做开发时,使用80端口进行启动项目的时候发现端口被占用了,于是尝试解决这个问题.具体步骤如下,分享给需要的你们~ 二.解决步骤 1.使用netstat -ano|findstr "80"命令查看80端口对应的进程号PID. 2.因为80端口被系统服务占用,所以没办法直接杀掉进程,于是用netsh http show servicestate 查看当前的http服务状态,结果如下图所示

解决Windows10下安装Ubuntu16.04双系统后开机没有Ubuntu引导

1.按照网上教程在磁盘中压缩硬盘并且不需要给他新建卷标,就让他显示空闲就好了; 2.使用UltraISO刻录U盘启动盘,开机选择U盘UEFI启动,直接安装.选择安装方式时只需要选择“安装Ubuntu,与windows共存”,C盘已经安装了Win10,ubuntu 会自己安装在之前压缩出来的空闲目录下的: 3.等待安装完成重启.开机时并没有ubuntu的引导,也就是并没有让我选择启动ubuntu还是启动windows,他直接启动win10了; 解决办法: 以管理员的身份在cmd中敲入命令: bcd

[国外] 解决Windows10下google搜索连接不上,但其它网页都能成功登入的问题

我的电脑突然在学校不能登陆google了,在家可以连接但是非常慢. 在网上搜索发现是由于DNS出了问题,在此记录一下. 可以通过控制面板——网络和Internet——网络和共享中心——点击现在使用的网络的属性——双击Internet协议版本4(TCP/IPv4)——确认两个选项都为自动选择IP/DNS地址即可. 据说如果比较严重的DNS污染只能通过手动设置DNS为8.8.8.8备选8.8.4.4(Google服务器)来治标,重装系统治本. ?我电脑出问题的原因是它选择了手动选择DNS地址,并设为

Docker容器 暴露多个端口

1.创建容器是指定 docker run -p <host_port1>:<container_port1> -p <host_port2>:<container_port2> 2.修改dockerfile expose所需要的端口,这样可以免去-p参数. 原文地址:https://www.cnblogs.com/jiangzhaowei/p/9928351.html

03 : docker - 容器常见操作

docker 容器常见操作 1: docker的容器管理命令详解: docker run -d -p 80:80 nginx:latestrun(创建并运行一个容器)-d 放在后台-p 端口映射-v 源地址(宿主机):目标地址(容器)nginx:latest docker镜像的名字,最后一个版本 运行一个centos,并进入容器终端: docker search centos 找到官方的centos镜像docker pull centosdocker run -it --name centos

docker容器从入门到精通

第1章 docker容器 1.1 什么是容器? 容器就是在隔离的环境运行的一个进程,如果进程停止,容器就会销毁.隔离的环境拥有自己的系统文件,ip地址,主机名等 1.2 容器和KVM虚拟化的区别 kvm虚拟化: 需要硬件的支持,需要模拟硬件,可以运行不同的操作系统,启动时间分钟级(开机启动流程) linux开机启动流程: bios开机硬件自检 根据bios设置的优先启动项 网卡 硬盘 u盘 光驱 读取mbr引导 UEFI(gpt分区) mbr硬盘分区信息,内核加载路径 加载内核 启动第一个进程i