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

本地无法访问Docker发布的端口,JBoss服务访问返回ERR_EMPTY_RESPONSE

问题根因

你配置的-Djboss.bind.address=0.0.0.0启动参数未生效,JBoss默认只监听容器内部的回环地址127.0.0.1,外部请求无法穿透到容器内的服务,所以返回ERR_EMPTY_RESPONSE错误。
参数失效的原因是Dockerfile中ENTRYPOINT的写法错误:exec数组格式的ENTRYPOINT要求命令和每个参数都作为独立的数组元素,你将命令和所有参数写在同一个字符串内,系统会将整段内容当做一个命令文件查找,最终参数没有传递给standalone.sh脚本。

修复方案

修改Dockerfile中的ENTRYPOINT配置,将命令和参数拆分到不同的数组项:

# 错误写法
# ENTRYPOINT [ "/opt/jboss/bin/standalone.sh -Djboss.bind.address=0.0.0.0 -Djboss.bind.address.management=0.0.0.0" ]
# 正确写法
ENTRYPOINT [ "/opt/jboss/bin/standalone.sh", "-Djboss.bind.address=0.0.0.0", "-Djboss.bind.address.management=0.0.0.0" ]

修改后重新构建镜像启动容器,日志会显示JBoss监听地址变为0.0.0.0:8080,此时访问本地8080端口即可正常打开页面。

可选优化

你也可以直接修改JBoss的standalone/configuration/standalone.xml配置文件,将其中的interface绑定地址改为0.0.0.0,避免启动参数漏传的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 14:15:06