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

使用Jib插件构建Docker镜像:本地运行容器后无法访问REST端点

问题分析与解决方案

你的问题核心是端口映射不匹配,具体原因和解决方法如下:

问题根源

Spring Boot Web应用默认监听8080端口,但你执行docker run命令时,把主机的8080端口映射到了容器的80端口:

docker run --name localJibExample123 -d -p 8080:80 bc2cbf3b85d1

容器内的应用实际在8080端口运行,主机的请求无法通过80端口到达应用,导致访问失败。

解决方法

方法1:修正端口映射命令

直接修改docker run的端口映射规则,将主机8080端口映射到容器的8080端口:

docker run --name localJibExample123 -d -p 8080:8080 bc2cbf3b85d1

修改后重新启动容器,即可正常访问http://localhost:8080/hello。

方法2:配置应用在容器内监听80端口

如果希望保持当前的端口映射规则(8080:80),可以修改Spring Boot应用的配置,让它在容器内监听80端口:

  1. 在项目的src/main/resources/application.properties中添加配置:
    server.port=80
    
  2. 重新用Jib构建镜像并推送、拉取
  3. 再次执行原来的docker run命令即可访问

验证步骤

可以通过查看容器日志确认应用实际监听的端口:

docker logs localJibExample123

如果看到类似Tomcat started on port(s): 8080 (http)的日志,就说明应用确实在容器内的8080端口运行,此时需要用方法1修正映射。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 20:35:15