docker镜像加速器配置步骤

准备

确认系统初始化方式,用的 systemd还是 systeminit,

bash 复制代码
# 查看系统PID 1进程,确认是sysvinit而非systemd
ps -p 1 -o comm=
# 输出为init(Ubuntu-24. ,说明用sysvinit,需用service命令管理Docker

如果docker启动失败,查看 Docker日志,

cpp 复制代码
sudo cat /var/log/docker.log

修改/etc/docker/daemon.json镜像源配置文件

cpp 复制代码
sudo tee /etc/docker/daemon.json <<-'EOF'
{
    "registry-mirrors": [
        "https://dockerproxy.com",
        "https://docker.mirrors.ustc.edu.cn",
        "https://docker.nju.edu.cn",
        "https://docker.1ms.run",
        "https://docker.xuanyuan.me"
    ]
}
EOF

确认文件权限,

bash 复制代码
sudo chmod 644 /etc/docker/daemon.json
sudo chown root:root /etc/docker/daemon.json

重启 docker服务,

bash 复制代码
# 停止Docker服务
sudo service docker stop
# 启动Docker服务
sudo service docker start

验证配置生效

验证 docker运行状态,

bash 复制代码
sudo service docker status
# 输出 * Docker is running 即为启动成功

验证镜像加速器加载,

bash 复制代码
sudo docker info | grep -A 1 "Registry Mirrors"
# 输出包含至少一个配置的镜像源(如https://dockerproxy.com/)即为加载成功

测试镜像拉取加速效果(核心验证)

bash 复制代码
# 删除本地ubuntu镜像(确保从远程拉取)
sudo docker rmi ubuntu:latest 2>/dev/null
# 拉取镜像并计时(加速后耗时应在10秒左右)
time sudo docker pull ubuntu:latest

Q&A

为什么配置 docker会涉及 GRUB

Docker 想要实现容器的 Swap 内存限制(不实现会警告但不影响功能),

需要 Linux 内核开启对应的功能(cgroup_enable=memory swapaccount=1),

而这些功能的开关是内核启动参数------内核启动前必须由 GRUB 把这些参数传递给它。

什么是 GRUB

GRUB 是 GRand Unified Bootloader 的缩写,翻译为统一启动引导程序,

是Linux 系统开机后第一个运行的软件(BIOS/UEFI 之后),

简单说就是电脑的 "开机系统选择器 + 内核启动器"。

电脑开机的流程是:

BIOS/UEFI 硬件自检 →

加载 GRUB →

GRUB 引导 Linux 内核启动 →

进入系统桌面/终端,

GRUB 主要做 2 件事:

系统选择:

如果是双系统(Windows+Ubuntu),GRUB 会弹出选择菜单,让你选启动哪个系统;

单系统(仅 Ubuntu)会直接默认启动,无菜单。

传递内核启动参数:

Linux 内核启动时需要的一些 "指令",由 GRUB 传递给它(这也是你之前接触到修改 GRUB 的核心原因)。

怎么改GRUB

bash 复制代码
sudo vim /etc/default/grub  # 1. 改GRUB的配置文件(添加内核参数)
sudo update-grub            # 2. 更新GRUB的启动配置(让修改生效)
sudo reboot                 # 3. 重启系统(内核加载新的启动参数)
相关推荐
Escalating_xu1 小时前
【Linux 网络编程】手写序列化与反序列化:从 x op y 到能校验的文本协议
linux·运维·网络
润滑卫士1 小时前
油液多参数融合故障诊断:数据级融合与决策级融合方法
运维
李纲明3 小时前
WordPress 后台登录马上被踢回登录页:Cookie 域、HTTPS、盐值和页面缓存怎么查
运维·缓存·https·php·wordpress·cookie
todoitbo3 小时前
在 Ubuntu ARM64 上运行 Q1 V3.0 MuJoCo 模型:加载、步进和单执行器响应
linux·运维·ubuntu·ai·机器人·仿真教程·启元
AR-26710-3 小时前
Linux Day26——传输层与三次握手
linux·运维
额额额对了4 小时前
嵌入式 Linux 实战:i.MX6ULL 上的 CAN 通信与摄像头采集
linux·运维·服务器
RFID科技的魅力5 小时前
2026 年 RFID 资产标签批量制作怎么做?RFID 标签打印机实操指南
运维·人工智能·嵌入式硬件·物联网
灯澜忆梦5 小时前
【Linux】#10 | Linux 终端实用快捷键 + 安装应用
linux·运维·服务器
OnlyEasyCode7 小时前
IIS开放端口转发后端
运维·服务器
合合技术团队8 小时前
合合信息旗下TextIn面向全球市场推出文档处理自动化公有云服务
运维·自动化