Docker获取镜像报错docker: Error response from daemon

  • Post category:http

当在使用 Docker 的过程中,获取 Docker 镜像的时候,有时候会出现 Error response from daemon 的错误,这个错误提示比较通用,具体原因可能是多种情况导致的。下面提供几种可能会导致出现此错误的情况,并给出相应的解决方案。

1. Docker 服务被停止

当 Docker 服务被停止的时候,在进行操作的时候会出现这样的错误。因此,首先需要确定一下 Docker 的服务是否在运行。在 Linux 系统中,可以使用以下命令查看 Docker 是否在运行:

sudo service docker status

如果 Docker 服务没有运行,可以使用以下命令启动 Docker 服务:

sudo service docker start

2. Docker 镜像不存在

当我们使用 docker pull 命令从 Docker 镜像仓库获取镜像的时候,如果输入的镜像名称不正确或者下载的镜像不存在,也会提示 Error response from daemon 的错误。

例如,我们想要下载 redis 镜像,但是输入了错误的名称 redis2。此时执行:

$ docker pull redis2

会得到以下错误输出:

Error response from daemon: pull access denied for redis2, repository does not exist or may require 'docker login'

解决方案是输入正确的镜像名称,例如执行以下命令即可:

$ docker pull redis

3. Docker 镜像下载过程中网络问题或权限问题

在下载 Docker 镜像的过程中,如果遇到网络连接问题或者权限问题,也会提示 Error response from daemon 的错误。

例如,下载 nginx 镜像时遇到网络连接问题,执行以下命令:

$ docker pull nginx

会得到以下错误输出:

Error response from daemon: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on 10.0.2.3:53: read udp 10.0.2.15:39030->10.0.2.3:53: i/o timeout

这时需要检查网络连接是否正常。

若遇到权限问题,例如运行以下命令时:

$ docker pull registry

会得到以下错误输出:

Error response from daemon: Get https://registry-1.docker.io/v2/: denied: requested access to the resource is denied

这时需要检查权限是否正确。

总之,出现 Error response from daemon 的错误提示时,需要具体情况具体分析,找到问题所在并逐一解决。