docker容器正常启动,宿主机器无法访问启动的服务

####我在自己的windows7的电脑上安装了docker
####打包了一个springboot的服务,下面是我的Dockerfile文件

FROM java:8
VOLUME /tmp
ADD docker-demo_jar.jar app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

然后通过以下命令启动容器

docker run -t -p 8080:8080 springboot/dockerdemo

下面是启动后的打印日志

图片说明

然后通过本机的浏览器访问就是访问不了启动的服务

通过docker ps 也看到服务是启动的

图片说明
解决了,原来启动docker会自动分配ip,我看官方文档,都是用的localhost访问,可能是公司环境的原因吧,这个我也不是很清楚。有看到这么一句话(在Windows中,Docker主机地址是Linux VM的地址。当启动docker-machine虚拟机时会被分配一个IP地址。当你启动一个容器,容器的端口会映射到VM)