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

Drone CI拉取私有镜像仓库镜像时出现认证未授权错误

问题诱因
  • 密钥创建命令错误:执行drone secret add时--data参数未加@前缀,Drone不会读取对应路径的文件内容,只会将~/.docker/config.json字符串作为密钥值存储,完全不符合Docker认证配置的格式要求,导致拉取镜像时无法识别有效认证信息。
  • 认证配置格式不兼容:~/.docker/config.json中auths的key使用了带https://协议前缀的写法,多数容器运行时只匹配纯域名格式的Registry地址,无法和待拉取镜像所属的registry.example.com域名对应,导致认证信息匹配失败。
修复方案
  1. 先修改本地Docker认证配置,将auths的key改为纯Registry域名:
{
    "auths": {
        "registry.example.com": {
            "auth": "MYLEGITTOKEN"
        }
    }
}
  1. 删除原有错误的镜像拉取密钥:
drone secret rm --name docker-token --repository some/repo
  1. 重新创建正确的密钥,注意--data参数值前加@前缀,指定读取文件内容:
drone secret add --name docker-token --data @~/.docker/config.json --repository some/repo
  1. 若修复后仍报错,可在创建密钥时显式开启拉取权限,适配旧版本Drone的权限要求:
drone secret add --name docker-token --data @~/.docker/config.json --repository some/repo --allow-pull true

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 07:54:06