返回

快速修复 docker pull mysql 报missing signature key错误

后端

修复 Docker 拉取 MySQL 时出现的“缺少签名密钥”错误

症状

尝试使用 docker pull mysql 拉取 MySQL 镜像时,您可能会遇到以下错误:

Error: image signature verification failed: no trust data available

原因

此错误表明您正在使用过时的 Docker 版本,导致无法验证镜像签名。

解决方法

卸载旧版本 Docker

sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-engine

安装最新版本 Docker

sudo yum install docker-ce --nobest

启动 Docker 服务

sudo systemctl start docker

检查 Docker 状态

sudo systemctl status docker

如果 Docker 正在运行,您将看到类似以下的输出:

docker.service - Docker Application Container Engine
   Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2023-02-25 13:37:26 CST; 20s ago
     Docs: https://docs.docker.com
 Main PID: 14721 (dockerd)
   CGroup: /system.slice/docker.service
           ├─14721 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
           └─18325 docker-containerd-shim 5f8016040e952f2468d3508228508f8949413a9c18e9a53198188c3a7397a8cc

Feb 25 13:37:26 alibaba-ubuntu-1804-x86_64 systemd[1]: Starting Docker Application Container Engine...
Feb 25 13:37:26 alibaba-ubuntu-1804-x86_64 systemd[1]: Started Docker Application Container Engine.

现在,您应该可以成功拉取 MySQL 镜像了。

总结

我们介绍了如何快速修复 Docker 拉取 MySQL 时出现的“缺少签名密钥”错误。通过更新到最新版本的 Docker,您可以解决此问题并正常拉取 MySQL 镜像。

常见问题解答

1. 为什么会出现“缺少签名密钥”错误?
它表明您正在使用过时的 Docker 版本,导致无法验证镜像签名。

2. 如何更新到最新版本的 Docker?
使用以下命令:sudo yum install docker-ce --nobest

3. 更新 Docker 后还需要做些什么?
启动 Docker 服务:sudo systemctl start docker

4. 如何检查 Docker 是否正在运行?
使用以下命令:sudo systemctl status docker

5. 如果在更新 Docker 后仍出现错误,该怎么办?
如果您仍然遇到问题,请检查您的防火墙或代理设置,并确保它们允许 Docker 连接到 Docker Hub。