站点可以';使用Docker时无法访问错误

站点可以';使用Docker时无法访问错误,docker,Docker,Aim:我想看到我的应用程序在外部世界运行 我的Dockerfile如下所示: FROM node:8.1.0 RUN mkdir /app WORKDIR /app RUN npm install EXPOSE 3000 docker build-名称xyz。//忽略任何错误,因为它工作正常 docker run-d-p8100:3000——名称服务器xyz 为了在用户代理(即chrome)上运行此功能,我是否应该按如下方式编写url ec2 ip:xx.xx.xxx.xx:8100//

Aim:我想看到我的应用程序在外部世界运行

我的Dockerfile如下所示:

FROM node:8.1.0
RUN mkdir /app 
WORKDIR /app
RUN npm install

EXPOSE 3000
docker build-名称xyz。
//忽略任何错误,因为它工作正常

docker run-d-p8100:3000——名称服务器xyz

为了在用户代理(即chrome)上运行此功能,我是否应该按如下方式编写url

ec2 ip:
xx.xx.xxx.xx:8100
//自上而下的过程都正确吗


当我在浏览器上运行
xx.xx.xxx.xx:8100
时,浏览器显示无法访问站点

我相信您错过了EC2安全组的入站规则中需要打开端口的部分。请看下图:


然后转到DNS的端口8100或EC2的IP,如xx.xx.xxx.xx:8100

是否在安全组中打开该端口?还要检查节点服务器是否运行正常,或者是否使用了
docker run-it-p 8100:3000--name server xyz
。将
-d
替换为
-it
,这样您就可以在控制台上获取日志了。您的端口8100在EC2实例上打开了吗?不,我还没有在EC2实例上打开端口8100,我现在检查了它,为了打开它,请询问规则类型,HTTPS,HTTP默认为443和80,那么,我应该采取哪种类型,在端口范围内我应该给出8100?在EC2上打开端口8100后,我仍然会得到相同的错误。是的,我做了相同的事情,但错误仍然是相同的。您可以执行docker ps,然后使用
docker ps
的输出更新您的问题吗?运行docker ps后,docker将
启动
端口为
0.0.0.0:8100->3000/tcp