当前位置: 首页 > news >正文

【记录】Docker|Docker镜像拉取超时的问题、推荐的解决办法及安全校验

我的系统版本:Ubuntu 24.04
行文时的Docker版本:Docker version 27.5.0, build a187fa5

文章目录

    • 镜像拉取
      • 核心问题
      • 解决办法
        • 一、(推荐)用加速源pull
          • 过程
          • 安全校验
          • 进一步配置
        • 二、(不推荐)修改配置

镜像拉取

众所周知,
没有镜像,
建不了docker。

核心问题

国内访问https://registry-1.docker.io/v2/访问不了。

解决办法

一、(推荐)用加速源pull

换镜像配置,很麻烦。
要重启。
不好。

过程

网上随便找个可靠的加速源,
检索关键词“2025 docker 加速源”,
找一个最新的教程,例如下图:
在这里插入图片描述

用这里提到的镜像源列表,pull下来。
pull时的指令是:

sudo docker pull [加速源]/library/[docker镜像]

例如:

sudo docker pull docker.1panel.live/library/ubuntu:24.04
安全校验

为保证安全,可以校验一下pull的镜像是否和官方的一致。

运行下面这条指令,打印SHA256校验值:

 sudo docker images --digests

与官方对比。例如Ubuntu24.04的Hub Docker查询链接是 Image Layer Details - ubuntu:24.04 | Docker Hub(需要上网),其SHA256是sha256:7c06e91f61fa88c08cc74f7e1b7c69ae24910d745357e0dfe1d2c0322aaf20f9:
在这里插入图片描述
而我拉取下来的第三方镜像的SHA256值是“sha256:7c06e91f61fa88c08cc74f7e1b7c69ae24910d745357e0dfe1d2c0322aaf20f9”:
在这里插入图片描述

可以看到,别无二致。

因此可用docker.1panel.live/library/ubuntu:24.04作为ubuntu:24.04的替代。

进一步配置

为了后续使用方便,最好是把repository改成docker hub中的,这样如果有其他用户尝试使用,他们就不用通过docker images去查名字了。修改方式:

  1. 首先,新建一个镜像tag:
    docker tag [镜像ID] [新的REPOSITORY]:[新的tag]
    
  2. 其次,删掉原本的镜像:
    docker rmi [旧的REPOSITORY]:[旧的tag]
    
二、(不推荐)修改配置

编辑(或新建)配置文件:

sudo vi /etc/docker/daemon.json

添加镜像源(如果是空白的就直接粘贴,如果不是空白的就参考格式粘贴相关内容)(注意:需要自己搜索查找当前可用的镜像源,不一定能直接用我贴在这里的这个):

{"registry-mirrors": ["https://docker.xuanyuan.me"]
}

重启docker服务配置和服务(对于部分服务器,需要重启):

sudo systemctl daemon-reload    # 重新加载系统服务配置
sudo systemctl restart docker   # 重启Docker

检查配置情况:

sudo docker info | grep -A 5 "Registry Mirrors"

如果显示确实替换了,就行了。

再次尝试拉取,如果可行,就行。

不推荐的原因是因为这个要重启docker,重启会导致很多docker服务关停,如果有其他用户用,就会出问题。

本账号所有文章均为原创,欢迎转载,请注明文章出处:https://shandianchengzi.blog.csdn.net/article/details/150638564。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。

http://www.dtcms.com/a/348978.html

相关文章:

  • FPGA时序分析(四)
  • asio的线程安全
  • 使用Cobra 完成CLI开发 (一)
  • 3.1 存储系统概述 (答案见原书 P149)
  • C++ string自定义类的实现
  • 【论文阅读 | arXiv 2025 | WaveMamba:面向RGB-红外目标检测的小波驱动Mamba融合方法】
  • 上科大解锁城市建模新视角!AerialGo:从航拍视角到地面漫步的3D城市重建
  • 深度剖析Spring AI源码(三):ChatClient详解,优雅的流式API设计
  • R60ABD1 串口通信实现
  • 在 Ubuntu 24.04 或 22.04 LTS 服务器上安装、配置和使用 Fail2ban
  • 【Qwen Image】蒸馏版与非蒸馏版 评测小结
  • 第3篇:配置管理的艺术 - 让框架更灵活
  • 多线程下单例如何保证
  • [身份验证脚手架] 前端认证与个人资料界面
  • 2025.8.18-2025.8.24第34周:有内耗有挣扎
  • Spring Cloud 快速通关之Sentinel
  • 遥感机器学习入门实战教程|Sklearn案例⑩:降维与分解(decomposition 模块)
  • [e3nn] 等变神经网络 | 线性层o3.Linear | 非线性nn.Gate
  • 动态规划--编译距离
  • AI代码生成器全面评测:六个月、500小时测试揭示最强开发助手
  • Redis 高可用篇
  • 51单片机-实现定时器模块教程
  • GaussDB 数据库架构师修炼(十八) SQL引擎-统计信息
  • 用 WideSearch 思路打造「零幻觉、全覆盖」的多 Agent 信息收集器
  • SRE 系列(四)| MTTI 与 On-Call:高效故障响应之道
  • C++标准库算法:从零基础到精通
  • Go语言 Hello World 实例
  • 数据标注的质检环节有多少种
  • 单表查询-分析函数的应用
  • 智能体之推理引擎(3)