You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从局域网内另一台设备访问Docker中运行的MEVN Web应用

解决局域网访问Docker化MEVN应用的问题

问题根源

你目前的配置有两个关键错误:

  1. 端口映射理解偏差:-p 8080:8080是运行容器时的命令参数,不是Dockerfile的配置项,你错误地把它加到了http-server的启动命令里,会导致服务启动失败。
  2. 服务绑定地址限制:http-server默认只绑定127.0.0.1,仅容器内部能访问,外部(包括局域网其他机器)无法连接,必须让它绑定0.0.0.0才能对外暴露服务。

修复步骤

  1. 修正Dockerfile的CMD命令
    将最后一行的CMD http-server -p 8080:8080 --log-ip修改为:
CMD http-server -p 8080 -a 0.0.0.0 --log-ip
  • -a 0.0.0.0:让服务监听容器的所有网络接口,允许外部访问
  • -p 8080:指定服务在容器内的运行端口(与EXPOSE声明的端口保持一致即可)
  1. 重新构建镜像
    在Dockerfile所在目录执行:
docker build -t mevn-app .
  1. 正确运行容器(添加端口映射)
    执行以下命令启动容器,这里的-p 8080:8080才是真正将主机的8080端口映射到容器的8080端口:
docker run -d -p 8080:8080 mevn-app

验证

容器启动后,在局域网其他机器访问http://192.168.0.111:8080,即可正常打开应用。如果仍无法访问,可通过docker ps查看容器是否正常运行,或用docker logs <容器ID>查看服务启动日志排查问题。

内容的提问来源于stack exchange,提问作者modernzombie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 16:48:36