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

Kubernetes部署Lagom服务时镜像拉取策略Never致Pod同步失败

分析Kubernetes部署Lagom AccessService时的"Container image is not present with pull policy of Never"错误

这个错误的核心是Kubernetes无法在节点本地找到你指定的镜像,同时Pod的imagePullPolicy被设置为Never(意味着K8s不会尝试从远程仓库拉取镜像)。结合你的构建流程,我整理了几个最可能的原因和对应的排查/解决步骤:

1. 镜像名称/标签与Kubernetes Deployment配置不匹配

你用fabric8插件构建的镜像名称是由根pom里的<name>%g/%a:%l</name>定义的:

  • %g 对应项目的groupId
  • %a 对应应用模块的artifactId
  • %l 对应latest标签(同时你还配置了${project.version}作为额外标签)

首先执行docker images查看实际构建出的镜像全名(比如类似com.example/accessservice:1.0.0或com.example/accessservice:latest),然后对比你的Kubernetes Deployment/YAML文件里的spec.containers[0].image字段:

  • 要确保镜像仓库、名称、标签完全一致,哪怕是大小写差异都会导致K8s识别不到。
  • 比如如果Deployment里写的是accessservice:latest,但实际镜像名是my.group/accessservice:latest,就会出现找不到的情况。

2. Minikube Docker环境上下文不一致

Minikube自带独立的Docker daemon,你必须确保:

  • 构建镜像的终端已经执行了eval $(minikube docker-env),并且在这个环境下完成了clean package docker:build
  • 部署Kubernetes资源的终端也处于同一个Minikube Docker环境中(如果是新终端,需要重新执行eval $(minikube docker-env))

可以通过以下步骤验证:

# 确认当前Docker环境指向Minikube
docker context show
# 或者查看Docker daemon地址
echo $DOCKER_HOST

如果输出不是Minikube对应的地址,重新执行eval $(minikube docker-env)后再重新部署Pod。

3. ImagePullPolicy配置的潜在问题

如果你的Deployment里明确设置了imagePullPolicy: Never,需要注意:

  • 这个策略要求镜像必须已经存在于Pod调度到的节点本地(在Minikube场景下就是Minikube虚拟机内的Docker)
  • 如果你在构建镜像后重启过Minikube,可能会导致镜像丢失,需要重新执行构建命令
  • 如果你不确定镜像是否存在于Minikube内部,可以进入Minikube虚拟机验证:
minikube ssh
docker images | grep accessservice

如果看不到镜像,说明构建时没有正确推送到Minikube的Docker daemon中,需要重新构建。

4. Fabric8插件构建配置的小细节检查

你的插件配置里有几个点可以确认:

  • 根pom里的<skip>true</skip>和应用模块里的<skip>false</skip>是正确的,确保只有应用模块会构建镜像
  • 应用模块的entrypoint配置不会影响镜像的存在性,但如果镜像构建过程中出现静默错误(比如依赖打包不完整),也可能间接导致部署问题,但你的错误提示是镜像不存在,所以这个可能性较低

快速验证步骤总结

  1. 确认当前终端处于Minikube Docker环境:eval $(minikube docker-env)
  2. 查看本地镜像:docker images | grep accessservice,记录完整镜像名
  3. 检查Deployment的image字段是否和上述镜像名完全一致
  4. 如果不一致,修改Deployment的镜像配置;如果一致,重新构建镜像并重新部署

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:41:35