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

Docker CI构建中镜像不存在时docker rmi导致构建失败的解决求助

解决Docker CI流程中docker rmi镜像不存在时构建中断的问题

直接给docker rmi命令追加|| true即可,和你处理容器停止、删除的逻辑一致:

docker rmi example/hello-world:latest || true

原理说明

在Shell环境中,command || true的逻辑是:如果前面的命令执行失败(返回非0退出码),就执行true命令。而true的退出码固定为0,CI工具会判断这一步执行成功,不会中断整个构建流程。

修改后的完整部署脚本

docker build -t example/hello-world:latest .
docker stop zod || true && docker rm zod || true
docker rmi example/hello-world:latest || true
docker run --name zod -d -p 6000:6000 -dit example/hello-world:latest

可选的严谨写法

如果你不想看到"镜像不存在"的错误输出,可以先检查镜像是否存在,再执行删除操作:

# 检查镜像存在则删除
docker image inspect example/hello-world:latest > /dev/null 2>&1 && docker rmi example/hello-world:latest

docker image inspect会在镜像存在时返回0,不存在时返回非0;> /dev/null 2>&1是把检查的输出和错误信息都丢弃,避免污染CI日志。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.03 10:13:29