用docker 搭建 node.js服务,端口映射无效

发现用docker搭建node.js服务时,向外提供的端口是8990,但是搭建成功后,发现访问'localhost:8990'或'127.0.0.1:8990' 都无法访问
dockerfile 配置如下:

 FROM node:6.10.3

WORKDIR /data1/server

RUN  cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime


# replace this with your application's default port
EXPOSE 8990

VOLUME ["/data1"]

app.js

var express = require('express');

// Constants
var PORT = 8990;

// App
var app = express();
app.get('/', function (req, res) {
res.send('Hello world\n');
});

app.listen(PORT);
 docker run -it -p 8990:8990 /bin/bash

进去后执行

 npm start

成功运行了,但是发现根本无法访问'localhost:8990'或'127.0.0.1:8990' 经过一番努力,发现是绑定 127.0.0.1的问题

127.0.0.1是一个回环地址,只能本机访问,外部无法访问的。所以express要监听到0.0.0.0这个地址上

苦逼啊,居然这个原因,搞了很久。

转载于:https://my.oschina.net/tearlight/blog/899157

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值