docker run hello-world失败、报错

若终端输出类似以下信息,一般是docker镜像源未设置或有问题

bash 复制代码
Unable to find image 'hello-world:latest' locally
docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded (Client.Timeout exceeded while awaiting headers).
See 'docker run --help'.

解决方案:

bash 复制代码
# 1. 停止 Docker 服务(避免占用)
sudo systemctl stop docker

# 2. 修改配置文件,添加镜像源
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
      "registry-mirrors": [
        "https://do.nark.eu.org",
        "https://dc.j8.work",
        "https://docker.m.daocloud.io",
        "https://dockerproxy.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://docker.nju.edu.cn",
	"https://docker.xuanyuan.me",
	"https://mirror.ccs.tencentyun.com",
	"https://mirror.huaweicloud.com",
	"https://docker.1ms.run"
    ]
}
EOF

# 3. 重新加载系统配置,重启 Docker
sudo systemctl daemon-reload
sudo systemctl restart docker

# 4. 查看 Docker 信息
docker info
# 终端输出的Registry Mirrors就是配置好的镜像源
Client: Docker Engine - Community
 Version:    27.0.3
 Context:    default
 Debug Mode: false
...
...
...
 Registry Mirrors:
  https://do.nark.eu.org/
  https://dc.j8.work/
  https://docker.m.daocloud.io/
  https://dockerproxy.com/
  https://docker.mirrors.ustc.edu.cn/
  https://docker.nju.edu.cn/
  https://docker.xuanyuan.me/
  https://mirror.ccs.tencentyun.com/
  https://mirror.huaweicloud.com/
  https://docker.1ms.run/
 Live Restore Enabled: false
 
# 5. 重新运行docker run hello-world
docker run hello-world
# 如果一切顺利,会输出以下信息
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
17eec7bbc9d7: Pull complete 
Digest: sha256:f7931603f70e13dbd844253370742c4fc4202d290c80442b2e68706d8f33ce26
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
相关推荐
ai产品老杨11 小时前
架构师深剖:基于 Docker 容器化与边缘计算的 AI 视频管理平台——支持 GB28181/RTSP 多协议接入与全源码交付
人工智能·docker·边缘计算
凡人叶枫11 小时前
Effective C++ 条款23:宁以 non-member、non-friend 替换 member 函数
linux·开发语言·c++·嵌入式开发
不会C语言的男孩12 小时前
Linux 系统编程 · 第 4 章:文件属性与元数据
linux·c语言·开发语言
小生不才yz12 小时前
Shell脚本精读 · S02-03 | 词拆分、通配符与未加引号的变量
linux
2601_9618454212 小时前
法考真题及答案解析|历年真题|资料已整理
linux·windows·ubuntu·macos·centos·gnu
A_humble_scholar12 小时前
Linux(七)调度器:从硬件矛盾到进程切换的底层逻辑
linux·服务器·网络
AOwhisky13 小时前
Redis 学习笔记(第四期):高可用与集群(哨兵 + Cluster + 容器化)
linux·运维·数据库·redis·笔记·学习·缓存
零陵上将军_xdr13 小时前
Shell脚本入门:从Hello World到变量的灵活运用
linux
C语言小火车13 小时前
嵌入式Linux应用开发技术栈完全指南
linux·运维·服务器
qq_1851986913 小时前
Docker 历史版本
docker