gpt4 book ai didi

node.js - 通过 Docker 访问 Web 应用程序时连接被拒绝

转载 作者:太空宇宙 更新时间:2023-11-03 22:32:24 24 4
gpt4 key购买 nike

我对 Docker 还很陌生,所以我正在尝试使用我编写的 Node Web 应用程序并将其 Docker 化。该应用程序是开源的,因此您可以在此处找到它和 Dockerfile:Paw-Wars

所以你不必点击,Dockerfile 就在这里:

FROM mhart/alpine-node

WORKDIR /src
ADD . .

RUN npm install

EXPOSE 5050
COPY config.json /src/config.json
CMD npm run docker

因此,我打开 Docker 快速入门终端(我使用的是 Mac OS X),转到我的路径并构建它:

docker build -t paw-wars .

构建完成后,我运行它:

docker run paw-wars

它旋转得很好,并说它正在监听端口 5050。我从 docker-machine ip default 获取 IP ,并尝试在端口 5050 上连接到它,但连接被拒绝。我尝试解决此问题所做的大多数搜索都告诉我,我需要确保使用正确的 IP,但我几乎肯定我正在这样做。不太确定我做错了什么。它不在存储库中,但我也尝试绑定(bind)到 0.0.0.0在我的应用程序(index.js)中,但这也不起作用。

谢谢!

最佳答案

问题是您必须在 docker run 命令中指定端口。我认为在 dockerfile 中使用 EXPOSE 就足够了,但事实并非如此。这只是为了让端口在内部公开。

docker run -p 5050:5050 paw-wars 效果很好。

关于node.js - 通过 Docker 访问 Web 应用程序时连接被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34751961/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com