无法通过命令行登录Artifactory docker registry报404错误咨询
Error response from daemon: login attempt to https://artifactory.com/v2/ failed with status: 404 Not Found.
可能的故障原因
- Artifactory Docker仓库访问方式配置不匹配
Artifactory支持端口映射、反向代理子路径、反向代理子域名三种Docker访问模式,你命令行使用的地址与实际配置的访问方式不匹配是最常见的诱因。比如你配置的是仓库级子域名模式(如docker-<repo-name>.artifactory.com),但直接用根域名artifactory.com调用v2接口,就会触发404。 - 反向代理转发规则缺失
如果用Nginx/Apache等反向代理暴露Artifactory服务,没有正确配置Docker Registry对应的v2接口转发规则,请求无法正确转发到Artifactory的Docker服务端点,也会返回404。 - 登录地址缺少仓库路径后缀
如果你用的是子路径访问模式,需要在登录地址后面加上对应的仓库路径后缀,比如实际访问路径是https://artifactory.com/docker-local/,直接用https://artifactory.com登录就会找不到v2端点。 - 目标Docker仓库未启用
即使你有管理员权限,待登录的Docker类型本地/远程/虚拟仓库没有处于启用状态,调用v2接口也会返回404而非状态异常提示。 - 权限配置异常
你的账号虽然有Artifactory UI登录权限,但没有分配对应Docker仓库的docker login相关权限,部分版本的Artifactory在权限不足时会误返回404而非401状态码。 - 命令行拼写错误
检查登录命令的域名、路径拼写,比如多打了多余后缀、协议写错(比如把https写成http),也会触发404。正确的登录命令格式为docker login <你的Docker仓库访问地址>。
内容的提问来源于stack exchange,提问作者vp venks
相关产品推荐
相关产品推荐

