Docker Can';t从容器外部进入
我正在docker容器上运行Angular,并试图从本地web浏览器访问它。Docker Can';t从容器外部进入,docker,angular5,Docker,Angular5,我正在docker容器上运行Angular,并试图从本地web浏览器访问它。 从节点:9.11.1作为节点 维护者构造 运行mkdir-p/usr/src/app WORKDIR/usr/src/app 复制package.json/usr/src/app 运行npm安装 抄袭/usr/src/app 暴露4200 CMD[“npm”,“开始”] 我使用:docker build-t act构建。 我使用:docker run-p 4200:4200 act运行 这以前对我有用,但现在不行了
从节点:9.11.1作为节点
维护者构造
运行mkdir-p/usr/src/app
WORKDIR/usr/src/app
复制package.json/usr/src/app
运行npm安装
抄袭/usr/src/app
暴露4200
CMD[“npm”,“开始”]
我使用:docker build-t act构建。
我使用:docker run-p 4200:4200 act运行
这以前对我有用,但现在不行了。我从chrome收到的错误是,无法访问此站点172.17.0.2。响应时间太长。。我试过去本地主机:4200
我试过运行其他web服务器,可以很好地访问它们:docker run-p80:80--name webserver nginx
是否需要允许所有带有--host标志的接口
npm start --host 0.0.0.0
这使得angular可以被所有接口访问,而不仅仅是在docker容器中提供环回接口。如果有人出现此问题,您可以运行:
ng serve—主机0.0.0.0—端口4200
您将能够从主机访问您的应用程序。没有帮助。虽然现在我得到了“localhost没有发送任何数据。ERR\u EMPTY\u RESPONSE”如果您将--network host
添加到run命令会怎么样?它们都不起作用,您确定npm start
默认情况下在端口4200上启动服务器吗?是的。如果我只是在本地运行它,而不是在容器中运行,那么我可以毫无问题地访问它。