docker镜像加速器配置daemon.json不生效

现象

安装docker26.1.4,启动服务拉取镜像发现超时,走的是官方镜像仓库地址,配置本地加速后/etc/docker/daemon.json,重启仍然走的官方地址

加速器地址:https://docker.imgdb.de/

docker info | grep  'Registry Mirrors'

展示的是:io.docker,非我们配置的地址
再继续测试:
1、不通过系统服务systemctl 启动docker容器 ,临时启动docker指定加速器地址

sudo dockerd --registry-mirror=https://docker.imgdb.de/ --debug

发现这个时候加速生效了
这个时候可以判断是通过系统服务sysytemd启动导致的问题

查看

cat /usr/lib/systemd/system/docker.service
 
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

我们的配置

[root@VM-8-10-centos system]# cat /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://docker.imgdb.de/"]
}
[root@VM-8-10-centos system]# 

配置依然未生效,Docker 默认套接字路径可能被覆盖(如 systemd 配置冲突),fd://监听路径可能没能正确加载/etc/docker/daemon.json 配置

修改方法

套接字监听协议修改为unix://:
不要直接修改docker.service,通过override.conf重置参数

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/override.conf <<-'EOF'   这个系统启动文件覆盖了docker配置
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd --containerd=/run/containerd/containerd.sock --host=unix:///var/run/docker.sock
EOF

这样就解决了配置加速器失效问题
Docker 26.1.4 版本中,同时监听多个套接字时可能出现配置加载异常(官方已确认并修复)

[root@lavm-6pow30ca87 ~]# docker info   查看docker运行信息  可以查看是否正常连接
Client: Docker Engine - Community
 Version:    26.1.4
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.14.1
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.27.1
    Path:     /usr/libexec/docker/cli-plugins/docker-compose

Server:
 Containers: 1
  Running: 1
  Paused: 0
  Stopped: 0
 Images: 2
 Server Version: 26.1.4
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: d2d58213f83a351ca8f528a95fbd145f5654e957
 runc version: v1.1.12-0-g51d5e94
 init version: de40ad0
 Security Options:
  seccomp
   Profile: builtin
 Kernel Version: 3.10.0-1160.el7.x86_64
 Operating System: CentOS Linux 7 (Core)
 OSType: linux
 Architecture: x86_64
 CPUs: 2
 Total Memory: 7.608GiB
 Name: lavm-6pow30ca87
 ID: 1cf81d56-b644-4a59-82fb-aea52fe9715f
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Registry Mirrors:
  https://docker.imgdb.de/
 Live Restore Enabled: false

Registry Mirrors:
https://docker.imgdb.de/ 成功读取配置

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值