Docker和K8s实战(三)——Docker安装Node.js出现curl:Recv failure: Connection reset by peer问题

本文讲述了如何在Docker容器中运行Node.js应用时遇到的`Connection reset by peer`错误,通过调整hostname和容器端口设置,最终解决并实现从本地机器直接访问。关键步骤包括修改hostname为0.0.0.0以允许外部访问,并提供了一个博主解决方案的实践过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

curl http://127.0.0.1:8080 想要跑出nodejs的Hell world效果时,突然报Connection reset by peer错。

打镜像的时候使用了package.json和index.js拿了简单的example,一开始const port是3030以为是端口问题,改成8080重新打镜像运行之后还是一样的错误。

后面还好找到了一个博主的方案,http://blog.mangolovecarrot.net/2021/04/24/233
尝试改了之后确实可以了。

const hostname = '127.0.0.1';

这地址是本机地址,只允许机器内部访问,需要进入容器访问。

docker ps 列出docker容器

CONTAINER ID   IMAGE                     COMMAND       CREATED        STATUS        PORTS                           
ce86b2365135   iaiti/centosnodejs1   "node /app/index.js"   19 hours ago   Up 19 hours   0.0.0.0:8080->8080/tcp, :::8080->8080/tcp   fervent_wright

exec命令进入容器才能输出hello world

[root@ce86b2365135 app]# curl http://localhost:8080
Hello World

如果想在机器上直接访问

将const hostname = '127.0.0.1'; 改为const hostname = '0.0.0.0';即可

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iaiti

赏顿早餐钱~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值