系统 :ubuntu 22.04
1、通过snap安装docker,后续通过systemctl start docker等一系列命令都用不了,建议使用apt工具包安装docker【本人习惯】
apt-get install docker-ce docker-ce-cli containerd.io
2、安装docker镜像的时候报错:
Error response from daemon: Get "https://registry-1.docker.io/v2/": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
发现是默认的镜像源被禁用了,于是需要额外指定镜像源,在 /etc/docker/daemon.json文件中【如果没有该文件,则新建文件】
{
"registry-mirrors" : ["https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://dockerproxy.com",
"https://gst6rzl9.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"http://mirrors.ustc.edu.cn/",
"https://mirrors.tuna.tsinghua.edu.cn/",
"http://mirrors.sohu.com/"
],
"insecure-registries" : [
"registry.docker-cn.com",
"docker.mirrors.ustc.edu.cn"
],
"debug": true,
"experimental": false
}
然后依次执行:
sudo systemctl daemon-reload
sudo systemctl stop docker.service
sudo systemctl stop docker.socket
sudo systemctl start docker.service
sudo systemctl start docker.socket
PS:我看网上其他教程,就是让你执行以下systemctl daemon-reload,systemctl restart docker,这样你通过docker info命令,会发现镜像源配置没有变化,后面了解到,还需要额外重启docker.service和docker.socket。
更改后,就能成功拉取镜像了