当 Ubuntu 22.04 安装 Docker 提示 GPG key expired 报错时,核心解决方法是重新导入过期的 GPG 密钥或更换为有效的国内镜像源。首先运行 sudo apt update 查看具体缺失的密钥 ID,然后使用 apt-key adv 命令从 keyserver 重新获取公钥。若官方源访问超时,建议修改/etc/apt/sources.list.d/docker.list 配置文件,将源地址替换为清华大学或阿里云等国内镜像站,并重新执行密钥拉取命令。此外,检查系统时间是否准确,清理旧的 Docker 依赖包也能避免冲突,确保 APT 包管理器能正确验证软件包签名即可完成修复。
ubuntu22.04 安装 docker 以及安装过程中报错解决方法
官网安装有个小坑:Docker 官网正常打开会非常慢或者打不开,遇到打不开的情况就是网络的问题 (大家懂的),所以在参照官方文档进行安装时,有时候出现安装失败原因在于官方使用的是自己的镜像网站,由于网络不可达导致需要的包下载不下来,这时需要换成国内镜像比如清华、阿里云的 同时注意官网推荐 ubuntu 版本在 22.04 以上 以下的安装镜像采用清华大学提供的镜像网站,如果你的 linux 能正常访问谷歌,可以直接按照官网的提示安装,就不需要往下看了 清华大学镜像网站:清华大学镜像 docker 安装 (linux 版):docker 官网 安装步骤 1、移除之前安装的 docker 依赖 (如果曾经安装过) sudoaptremove$(dpkg --get-selections docker.iodocker-composedocker-compose-v2 docker-doc podman-docker containerd runc|cut-f1) 一键获取完整项目代码 shell 1 2、更新 apt 源 sudoaptupdate 一键获取完整项目代码 shell 1 3、安装 SSL 证书包 sudoaptinstallca-certificatescurl 一键获取完整项目代码 shell 1 4、创建密钥存放目录 sudoinstall-m0755-d/etc/apt/keyrings 一键获取完整项目代码 shell 1 5、拉取 docker 官方密钥 (报错看解决方法 1) sudocurl-fsSLhttp://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg-o/etc/apt/keyrings/docker.asc 一键获取完整项目代码 shell 1 6、修改密钥读取权限 sudochmoda+r /etc/apt/keyrings/docker.asc 一键获取完整项目代码 shell 1 7、修改 docker 源配置 echo"deb [arch=$(dpkg --print-architecture)signed-by=/etc/apt/keyrings/docker.asc] http://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu$(./etc/os-release&&echo"$VERSION_CODENAME")stable"|sudotee/etc/apt/sources.list.d/docker.list>/dev/nullsudoaptupdate 一键获取完整项目代码 shell 1 2 3 8、安装 docker sudoaptinstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 一键获取完整项目代码 shell 1 9、启动 docker docker 被 systemctl 所托管,可以使用 systemctl 命令去启动、停止、查看 docker 当前状态 # 查看当前状态 sudosystemctl statusdocker# 启动 dockersudosystemctl startdocker# 停止 dockersudosystemctl stopdocker# 重启 dockersudosystemctl restartdocker(截至 2026 年 3 月 14 日)
Docker GPG 密钥错误终极解决指南:Ubuntu Jammy 更新失败的 5 分钟修复
1. 理解 GPG 密钥错误的本质 GPG 密钥错误通常表现为类似这样的提示:W: GPGerror: https://download.docker.com/linux/ubuntu jammy InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 7EA0A9C3F273FCD8 E: The repository 'https://download.docker.com/linux/ubuntu jammy InRelease' is not signed. AI 写代码 这个错误的核心在于 APT 包管理系统无法验证 Docker 官方仓库的完整性。就像你去银行办理业务需要出示有效身份证件一样,APT 在从仓库下载软件包前,需要验证这些包确实来自 Docker 官方,而不是被第三方篡改过的版本。为什么会出现这个问题?主要有三个原因:密钥过期:GPG 密钥通常有有效期,过期后需要更新 系统迁移:从旧版 Ubuntu 升级到 Jammy 后,原有密钥可能不兼容 仓库变更:Docker 官方可能更新了他们的仓库签名密钥 重要提示:不要忽视这个错误!继续使用未经验证的仓库可能会安装恶意软件包。2.(消息于 2026 年 3 月 20 日发布)
Ubuntu22.04 国内源更新时提示 GPG 密钥错误如何解决?
1. 问题概述 在使用 Ubuntu 22.04 国内源更新时,用户可能遇到 GPG 密钥错误导致无法正常更新软件列表的问题。这种错误通常表现为系统提示"NO_PUBKEY"或"MISSING_KEY",这是由于某些软件源的公钥未正确导入到系统中。以下内容将从问题分析、解决方案以及技术扩展等角度深入探讨如何解决此类问题。2. 常见技术问题分析 GPG 密钥错误的根本原因是系统缺少与软件源关联的公钥。当 APT 尝试验证软件包签名时,如果没有对应的公钥,APT 将无法确认软件包的真实性,从而中断更新过程。问题表现:APT 更新时显示类似"GPG error: NO_PUBKEY"的错误信息。触发场景:切换到国内镜像源后,部分源未自动导入相关公钥。影响范围:所有依赖该源的软件包都无法被更新或安装。为了解决此问题,我们需要明确:哪些源缺失了 GPG 密钥。如何正确导入这些密钥。3. 解决方案 以下是针对 GPG 密钥错误的具体修复步骤:3.1 查找缺失的 GPG 密钥 运行以下命令查看具体缺失的密钥:sudo apt update 注意输出中的"NO_PUBKEY"关键字,并记录其后的密钥 ID(如:ABCDEF1234567890)。3.2 导入缺失的 GPG 密钥 使用以下命令导入记录的密钥:sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABCDEF1234567890 如果国内网络访问 keyserver.ubuntu.com 较慢,可以替换为国内的 Key 服务器,例如:sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys ABCDEF1234567890 3.3 验证修复结果 重新运行 APT 更新命令以验证问题是否解决:sudo apt update 若无任何 GPG 相关的错误提示,则说明修复成功。4. 技术扩展与流程图 为了更清晰地展示整个修复流程,以下是一个简单的流程图:graph TD; A[开始] --> B{APT 更新失败?}; B --是--> C[查找 NO_PUBKEY]; C --> D[记录密钥 ID]; D --> E[选择 Key 服务器]; E --> F[导入 GPG 密钥]; F --> G{APT 更新成功?}; G --否--> H[重复检查]; G --是--> I[完成];(发布时间是 2025 年 10 月 23 日)
在国服也不卡顿:Ubuntu 安装 Docker + 国内镜像加速秘笈 (实测可用)
本文针对 Ubuntu 22.04/20.04 系统,梳理从环境准备、Docker 引擎安装、用户权限配置到国内镜像源加速的全流程方案。通过标准化配置步骤,解决安装过程中的公钥报错与源切换问题,确保 Docker 在国内服务器或本地主机上的顺畅运行。01 环境准备与标准安装 更新软件包索引并安装依赖执行命令更新本地包数据库,并安装必要的依赖工具以便通过 HTTPS 使用仓库。添加 Docker 官方 GPG 密钥下载并添加 Docker 的官方 GPG 密钥,用于验证软件包的合法性。设置 Docker 仓库将 Docker 仓库地址添加到 APT 源中,以便后续可以直接安装更新版本。安装 Docker Engine 更新包索引后,安装最新版本的 Docker Engine、containerd 和 Docker Compose 插件。验证安装运行 hello-world 镜像,若能输出欢迎信息,则说明 Docker 引擎安装成功。02 常见问题排查 在安装过程中,可能会遇到 GPG 公钥过期警告或官方源访问超时的情况。针对此类问题,建议优先检查 /etc/apt/sources.list.d/docker.list 文件是否存在且配置正确。若官方源访问困难,可尝试手动换源或重新导入密钥。部分用户反馈,在网络波动较大的环境下,多次执行更新命令往往能解决临时的下载失败问题。(资料日期为 2026 年 4 月 17 日)
FAQ
为什么会出现 GPG 密钥过期?
密钥通常有有效期,过期后需要更新,或系统迁移后原有密钥不兼容,Docker 官方也可能更新了仓库签名密钥。
如何手动导入缺失的密钥?
使用 sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 密钥 ID 命令,若网络慢可替换为国内 Key 服务器。
忽略 GPG 错误继续安装有风险吗?
有风险,继续使用未经验证的仓库可能会安装恶意软件包,不建议忽视这个错误。