node.js - Docker Node JS 安装

标签 node.js docker boot2docker

我是 docker 的新手,我正在尝试遵循他们列出的 Node js 教程:https://docs.docker.com/examples/nodejs_web_app/

我遵循本教程,在测试部分之前一切似乎都很好,我无法 curl 到指定的端口。

$ curl -i localhost:49160
curl: (7) Failed to connect to localhost port 49160: Connection refused

$ docker ps
CONTAINER ID        IMAGE                          COMMAND                CREATED             STATUS              PORTS                     NAMES
21e727bc5a7d        username/docker-test   "node /src/index.js"   13 minutes ago      Up 13 minutes       0.0.0.0:49160->8080/tcp   gloomy_heisenberg
$ docker logs 21e727bc5a7d 
Running on localhost:8080

$ docker exec -it 21e727bc5a7d bash
[root@21e727bc5a7d /]# netstat -tulpn 
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1/node'

不确定我是否对某事感到困惑或如何解决此问题,有什么想法吗?

最佳答案

这是解决方案:

  1. 像这样运行你的应用程序:

    docker run --rm -i -t -p 49160:8080 <your username>/centos-node-hello

    输出应该会说正在监听端口 8080。 这意味着应用程序正在运行

  2. 打开另一个 docker CLI 终端并输入:

    docker-machine ls

    您将看到 IP 地址和端口。示例:192.168.99.100:<some-number>

  3. 转到浏览器并输入 IP 地址和导出的端口号。

    在这种情况下,192.168.99.100:49160 ,您的网站应该会出现。

希望对你有帮助。

关于node.js - Docker Node JS 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32041861/

相关文章:

java - 如何使用 boot2docker 在 mac OS X 中启用 docker Remote api Rest?

javascript - 仅当收到 HTTP 200 时如何通过 pipe() npm-request?

node.js - MongoError : E11000 duplicate key error collection: tracker-db. 用户索引:username_1 dup 键:{用户名:空}”

node.js - 来自 Webstorm 的 Grunt 调试

amazon-web-services - 如何在 AWS ECR 中使用 ASSUME_ROLE 推送到账户

debian - debian 中的 Tomcat7 :wheezy Docker instance fails to start

node.js - “ng”不被识别为内部或外部命令,Angular 教程

mongodb - 在docker compose容器中挂载mongo数据的主机卷

linux - 构建 Docker 容器时出错

linux - 如何永久设置boot2docker的环境变量