docker 可用镜像服务地址(2025.02.18可用)

1.错误

Error response from daemon: Get “https://registry-1.docker.io/v2/”
原因:镜像服务器地址不可用。

2.可用地址

编辑daemon.json(要是没有对应文件夹、文件先手动创建下):

vi /etc/docker/daemon.json

内容修改如下:

{
  "registry-mirrors": [
    "https://docker.hpcloud.cloud",
    "https://docker.m.daocloud.io",
    "https://docker.unsee.tech",
    "https://docker.1panel.live",
    "http://mirrors.ustc.edu.cn",
    "https://docker.chenby.cn",
    "http://mirror.azure.cn",
    "https://dockerpull.org",
    "https://dockerhub.icu",
    "https://hub.rat.dev",
    "https://proxy.1panel.live",
    "https://docker.1panel.top",
    "https://docker.m.daocloud.io",
    "https://docker.1ms.run",
    "https://docker.ketches.cn"
  ]
}

重启docker加载配置:

systemctl restart docker
systemctl daemon-reload

查看配置是否

<think>好的,我现在需要解决用户在使用wget下载containerd.io的RPM包时遇到的GnuTLS pull函数错误的问题。用户的环境是CentOS 8。首先,我需要了解这个错误的原因。GnuTLS相关的错误通常和SSL/TLS连接有关,可能涉及证书问题、库版本不兼容或网络配置问题。 首先,我应该检查用户的系统是否使用了正确的仓库和更新源。根据引用[4]的内容,用户可能需要更换yum源,因为CentOS 8已经停止维护,默认的源可能不可用。更换为阿里云或其他镜像源可能解决仓库访问问题。用户需要删除现有的仓库文件,下载新的CentOS-Base.repo,并生成缓存。 另外,引用[1]提到安装特定版本的openssl-libs可能解决依赖问题。如果wget在下载时遇到SSL/TLS错误,可能是因为openssl库版本过低或损坏。用户可能需要手动下载并安装较新的openssl-libs包,然后重试wget命令。 也有可能系统缺少必要的依赖包。例如,gnutls-utils或相关的开发包可能未安装。用户可以通过yum安装这些依赖来修复GnuTLS的问题。 此外,用户可能尝试使用curl代替wget,因为curl可能使用不同的TLS后端,如OpenSSL,这可以绕过GnuTLS的问题。引用[3]中的docker info命令可以用来验证配置是否生效,但这里可能更关注下载步骤。 如果问题仍然存在,可能需要更新整个系统,或者考虑将CentOS 8转换为CentOS Stream,如引用[2]所示,但这可能带来其他兼容性问题,需谨慎操作。 总结可能的解决步骤:1. 更换yum源;2. 更新openssl-libs;3. 安装依赖包;4. 使用curl替代wget;5. 系统升级或转换。需要按顺序尝试这些方法,并验证每一步是否解决了问题。</think>针对CentOS 8系统中使用`wget`下载containerd.io RPM包时出现的GnuTLS pull函数错误,以下是分步解决方案: --- ### **步骤1:修复系统仓库源** CentOS 8官方源已停止维护,需更换为Vault源: ```bash # 清空原有仓库配置 cd /etc/yum.repos.d && rm -rf ./* # 使用阿里云CentOS 8 Vault源 wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo # 生成新缓存 yum clean all && yum makecache ``` 此操作可解决因官方源失效导致的依赖包下载失败问题[^4]。 --- ### **步骤2:更新GnuTLS和OpenSSL库** GnuTLS错误可能与SSL库版本冲突有关,手动更新关键组件: ```bash # 安装openssl-libs的更新版本(以x86_64架构为例) wget ftp://ftp.pbone.net/mirror/ftp.centos.org/7.9.2009/updates/x86_64/Packages/openssl-libs-1.0.2k-21.el7_9.x86_64.rpm yum localinstall openssl-libs-1.0.2k-21.el7_9.x86_64.rpm # 更新GnuTLS相关依赖 yum install -y gnutls gnutls-utils ca-certificates ``` 通过修复SSL/TLS库的兼容性问题,可避免加密连接失败[^1][^4]。 --- ### **步骤3:使用curl替代wget** 若仍报错,改用`curl`下载RPM包: ```bash # 下载containerd.io RPM包(替换实际URL) curl -O https://download.docker.com/linux/centos/8/x86_64/stable/Packages/containerd.io-1.6.28-3.1.el8.x86_64.rpm ``` `curl`默认使用OpenSSL而非GnuTLS,可能绕过该错误[^3]。 --- ### **步骤4:直接通过Docker仓库安装** 推荐使用Docker官方仓库安装containerd: ```bash # 添加Docker CE仓库 dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo # 安装containerd.io dnf install -y containerd.io ``` 此方法自动解决依赖关系,避免手动下载RPM包。 --- ### **验证安装** 确认containerd服务状态: ```bash systemctl daemon-reload systemctl restart containerd containerd --version ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

core321

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值