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

已引入Jib仍需Docker?Quarkus容器构建异常求助

解决Quarkus Jib插件依赖Docker守护进程的问题

问题根源

你当前只设置了quarkus.container-image.build=true,但未开启远程仓库推送。Quarkus Jib插件默认在仅开启build的情况下,会尝试把构建好的镜像加载到本地Docker守护进程,这就需要Docker处于运行状态。而Jib宣传的“无需Docker构建”,是针对直接推送远程镜像仓库的场景。

快速修复步骤

  1. 开启镜像推送配置
    在你的application.properties中添加一行:
quarkus.container-image.push=true

开启推送后,Jib会跳过本地Docker加载环节,直接完成镜像构建并推送到GHCR仓库,全程不需要Docker daemon。

  1. 移除本地加载强制配置
    检查配置文件中是否存在quarkus.container-image.local=true,如果有就删掉它——这个配置会强制插件把镜像加载到本地Docker,直接抵消Jib的无Docker能力。

  2. 验证Token权限
    确认你的GitHub Token拥有write:packages权限,这是向GHCR推送镜像的必要权限,没有的话会导致推送失败。

完整可用配置示例

quarkus.container-image.build=true
quarkus.container-image.push=true
quarkus.container-image.name=hello-world-${quarkus.application.name} 

quarkus.container-image.registry=ghcr.io
quarkus.container-image.group=<my github group name>
quarkus.container-image.username=<my github username>
quarkus.container-image.password=<my github token with all required permissions>

额外排查方向

如果按上述配置仍有问题:

  • 检查网络是否能正常访问GHCR(可尝试curl https://ghcr.io验证)
  • 确认group和username配置正确,GHCR的镜像路径格式为ghcr.io/<group>/<name>:<tag>
  • 可尝试升级Quarkus到3.11.x系列的最新小版本(如3.11.3),修复可能存在的插件bug

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 16:28:25