RUNBOOK / Docker
Podman 拉取镜像 TLS 失败:registries.conf 与证书目录
podman pull 在私有 Registry 报 x509 或 TLS handshake timeout。
故障现象与判断依据
最可能原因
Podman 的仓库重写、信任证书与 Docker 配置并非完全共用,应先查看 containers 配置与真实目标地址。
LOG$ docker -D pull alpine:3.20
# 同时留存 daemon 日志,区分 token、manifest 与 layer 阶段
$ journalctl -u docker --since "15 min ago" --no-pager安全诊断
以下命令用于读取状态、验证解析或复现请求;先确认目标主机、权限与影响范围。命令中的占位符必须替换为当前环境的实际值。
READ / VERIFY# 先做只读核查;按当前运行时调整,不能把 Docker 的操作套给 Podman。
journalctl -u docker --since "15 min ago" --no-pager
# 外部拉取仅在本地 Clash 已验证可用时通过该代理执行;不可用则停止。
# 在确认目标服务、配置变更和影响范围前,不要重启服务。推荐修复步骤
- 1执行 podman --log-level=debug pull <image>。
- 2检查 /etc/containers/registries.conf 及 certs.d 中的目标 registry 配置。
- 3修复受信 CA 或网络链路后,保留镜像 digest 进行验证。
验证、限制与回滚
修复后的验证
podman pull 可在冷缓存完成,inspect 显示预期 digest。
风险提示与回滚
不要以关闭证书校验、删除全部缓存、无限重试、关闭防火墙或放宽到 chmod 777 来替代根因定位。任何配置变更前先保留原文件和校验结果;若验证失败,恢复该备份并重新采集日志。
可信来源与适用边界
参考来源podman-pull — Podman documentation ↗
registry image pull options 此页将环境级案例与本 Runbook 的检查步骤分开呈现,不能把示例日志当作当前服务器的真实事件。
网络环境检测
当 DNS、代理链路、海外依赖源或下载超时已通过本页命令确认是网络层问题时,可继续核对独立网络服务;这不替代本地根因修复。
访问边界云官方网站 →具体套餐、价格、可用线路、服务内容及相关规则以官网当前页面为准;不会携带你在工作台输入的命令、日志、Token、IP 或邮箱。