Docker配置国内国外镜像源

拉取镜像时候,如果出现错误,可以尝试修改镜像源。
报错信息如下:

1
Error response from daemon: Get "https://registry-1.docker.io/v2/": net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

第一步:创建目录

1
sudo mkdir -p /etc/docker

第二步:向daemon.json文件写镜像源

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"data-root": "/data/app/dockerWork",
"log-driver": "json-file",
"log-opts": {
"max-size": "500m",
"max-file": "3"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
],
"default-address-pools": [
{
"base": "172.17.0.0/16",
"size": 24
}
],
"dns": ["8.8.8.8", "8.8.4.4"],
"insecure-registries": ["ss.suwell.com"],
"registry-mirrors": [
"https://cx2tph5c.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://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn",
"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://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
"https://hub-mirror.c.163.com",
"https://your_preferred_mirror",
"https://dockerhub.icu"
]
}
EOF

第三步:重新加载配置文件并重启docker

1
2
3
sudo systemctl  daemon-reload
sudo systemctl restart docker
sudo systemctl start docker

配置说明:

  1. data-root: 指定 Docker 的数据目录。
  2. insecure-registries: 列出使用 HTTP 或自签名证书的私有仓库。
  3. registry-mirrors: 列出镜像加速器或镜像源的镜像站点。
  4. log-driver: 指定日志驱动,这里使用 json-file。
  5. log-opts: 配置日志选项,包括日志文件的最大大小和数量。
  6. storage-driver: 指定存储驱动,这里使用 overlay2。
  7. storage-opts: 配置存储选项,例如覆盖内核检查。
  8. default-address-pools: 配置默认的地址池。
  9. dns: 指定 DNS 服务器。