我正在尝试通过npm start使用http-server启动我的应用程序。它在本地主机上工作得很好,但是当我通过docker容器(端口映射)部署相同的应用程序时,它不会出现在我的本地浏览器中。
我在docker容器(Ubuntu)中有一个目录,它是通过命令docker run -it -p 8001:5500 ubuntu运行的。我已经在容器中安装了所有东西-- npm、vim编辑器等。
我的package.json文件是
{
"name": "test",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "http-server -a localhost -p 5500"
},
"author": "",
"license": "ISC",
"dependencies": {
"concurrently": "^5.0.2",
"http-server": "^0.12.1"
}
}之后,我执行了npm install,然后执行了命令npm start。该命令的输出为:

但是当我试图在chrome浏览器中打开我的应用程序时,它抛出了一个空响应。

此外,当我通过我的本地主机运行相同的应用程序时,它是可以访问的。

为什么我不能通过docker容器的端口映射访问服务器。??
发布于 2020-01-17 20:05:04
容器内部的localhost将无法从容器外部访问。在容器内部的0.0.0.0上运行您的服务器。
https://stackoverflow.com/questions/59786862
复制相似问题