文章详情页
docker不显示端口映射呢?
问题描述
各位大虾好!小白我写了一个dockerfile,内容如下:
FROM ubuntu:14.04MAINTAINER Chris Chan 'chenx1242@163.com'ENV REFRESHED_AT 2016-12-05RUN apt-get -y update && apt-get install -y nginxRUN mkdir -p /var/www/html/websiteADD nginx/global.conf /etc/nginx/conf.d/ADD nginx/nginx.conf /etc/nginx/nginx.confEXPOSE 80
然后又在本地写了一个index.html,然后启动这个镜像却发现port那里为空,请问大神们这样情况是什么原因呢?
问题解答
回答1:EXPOSE 是开放哪些端口,这些端口在同一个网络内的服务中是可以访问的。但并不对宿主机开放。
要想在 docker ps 中看到端口号需要 docker run 的时候指定 -p 或 -P 参数,如 -p 80:8080 把容器中的 8080 端口映射到宿主机的 80 端口。
回答2:docker ps的PORTS显示的是docker run -p指定的端口映射
EXPOSE的意思是向其他container(而不是外部网络)开放的端口, 而且这个不显示在docker ps。
相关文章:
1. shell - Python:IDLE中按F5测试脚本没反应?关闭脚本窗口会关闭全部Python窗口2. 如何判断数组写入数据库有重复的值3. css3 - css背景色不填充边框,css怎么写?4. angular.js - 用angularjs的service封装百度地图api出错,请问原因?5. html5 - 两个宽高一样的盒子重叠后旋转一定角度,为什么会看到下面的盒子6. javascript - js 微信分享出来没有缩略图是怎么回事?7. node.js mysql Cannot find module "net" 和 "tls"和"fs" 的问题8. node.js - 用node写的服务器,在Mac上能正常使用,在window上总是报错9. 想看以前的课程怎么办,10. java - idea git update project 里面的参数是什么意思
排行榜