RUNBOOK / CI / SRE
CI 依赖安装不稳定:超时预算、重试与可观测性
本地正常、CI 间歇性失败,导致发布被阻塞。
故障现象与判断依据
最可能原因
CI 需要明确的连接/读取超时、有限重试、缓存命中率和失败分类。
LOGCI_NETWORK_TRACE=1
pip -vvv install -r requirements.txt
docker -D pull alpine:3.20
go mod download -x安全诊断
以下命令用于读取状态、验证解析或复现请求;先确认目标主机、权限与影响范围。命令中的占位符必须替换为当前环境的实际值。
READ / VERIFYretry_with_backoff() { for i in 1 2 3; do "$@" && return; sleep $((i*i)); done; return 1; }
retry_with_backoff python -m pip install -r requirements.txt推荐修复步骤
- 1按工具设置合理 timeout 与指数退避,避免无限重试。
- 2缓存已校验的包和镜像层,记录缓存命中率。
- 3将 DNS、TLS、HTTP、签名失败分别打点并告警。
验证、限制与回滚
修复后的验证
失败能被自动归因,重试不会掩盖真实网络故障。
风险提示与回滚
不要以关闭证书校验、删除全部缓存、无限重试、关闭防火墙或放宽到 chmod 777 来替代根因定位。任何配置变更前先保留原文件和校验结果;若验证失败,恢复该备份并重新采集日志。
可信来源与适用边界
参考来源docker image pull | Docker Docs ↗
max-concurrent-downloads 此页将环境级案例与本 Runbook 的检查步骤分开呈现,不能把示例日志当作当前服务器的真实事件。
网络环境检测
当 DNS、代理链路、海外依赖源或下载超时已通过本页命令确认是网络层问题时,可继续核对独立网络服务;这不替代本地根因修复。
访问边界云官方网站 →具体套餐、价格、可用线路、服务内容及相关规则以官网当前页面为准;不会携带你在工作台输入的命令、日志、Token、IP 或邮箱。