Docker 镜像源配置指南

目录

前言

[一、 修改Docker镜像源步骤](#一、 修改Docker镜像源步骤)

[1. 找到并编辑配置文件](#1. 找到并编辑配置文件)

[2. 写入镜像源配置](#2. 写入镜像源配置)

[3. 镜像源提供](#3. 镜像源提供)

[4. 重启Docker服务](#4. 重启Docker服务)

[5. 验证](#5. 验证)


前言

配置Docker镜像源能大幅提升在国内拉取镜像的速度。可以通过修改Docker的配置文件来实现。


一、 修改Docker镜像源步骤

1. 找到并编辑配置文件

配置文件通常位于 /etc/docker/daemon.json。如果文件不存在,可以新建一个。

bash 复制代码
sudo vim /etc/docker/daemon.json

2. 写入镜像源配置

将你选择的镜像源地址填入配置。例如,使用南京大学镜像源:

bash 复制代码
{
  "registry-mirrors": ["https://docker.nju.edu.cn/"]
}

你可以配置多个镜像源,Docker会按顺序尝试:

bash 复制代码
{
  "registry-mirrors": [
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com"
  ]
}

3. 镜像源提供

下面提供一些可用的镜像源:

bash 复制代码
{
  "insecure-registries": [
    "docker.1ms.run",
    "hub.rat.dev",
    "mirror.azure.cn",
    "docker.1panel.live"
  ],
  "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://docker.1ms.run",
    "https://hub.rat.dev",
    "http://mirror.azure.cn",
    "https://docker.1panel.live/",
    "https://mirror.ccs.tencentyun.com",
    "https://9cpn8tt6.mirror.aliyuncs.com",
    "https://registry.docker-cn.com",
    "https://mirror.ccs.tencentyun.com",
    "https://docker.1panel.live",
    "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
    "https://docker.m.daocloud.io",
    "https://hub-mirror.c.163.com",
    "https://mirror.baidubce.com",
    "https://dockerhub.icu",
    "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"
  ],
  "iptables": false
}

4. 重启Docker服务

保存配置文件后,需要重启Docker服务使配置生效。

bash 复制代码
# 方法1,采用systemctl重启,推荐
sudo systemctl daemon-reload
sudo systemctl restart docker

# 方法2,采用service重启
sudo service docker restart

备注:

systemctlservice 重启方式主要有以下区别:

1. 所属架构不同

  • service:属于 SysV init 架构下的服务管理工具,主要用于操作位于 /etc/init.d/ 目录下的脚本。

  • systemctl:是 systemd 架构下的服务管理工具,用于对 .service 类型的 unit 执行操作。

2. 功能和用途差异

  • service
    • 功能较为基础,主要用于启动、停止和重启服务。

    • 不支持查看服务的详细状态或其他高级操作。

    • 只能管理 SysVinit 启动的服务。

  • systemctl
    • 提供了更多的功能和选项,例如可以查看服务的状态、启动、停止、重启、重载、重新加载等。

    • 除了基本的启动、停止、重启之外,还可以查看服务状态、设置开机启动、管理系统目标(targets)、处理日志、管理 sockets 和 timers 等。

    • 能够通过 systemd 的状态管理系统提供更详细和准确的服务状态信息,直接与 systemd 的数据库交互,而不是通过执行脚本获取状态。

    • 可以管理 systemd 和 SysVinit 启动的服务。

3. 重启机制不同

  • serviceservice restart 命令只会启动服务。

  • systemctlsystemctl restart 命令会先停止服务,然后再启动服务。

4. 兼容性不同

  • service:在使用 systemd 的系统中,为了向后兼容,service 命令通常仍然可用,但它实际上可能只是 systemctl 的一个简单封装,调用 systemctl 来执行操作。

  • systemctl:在基于 systemd 的系统中使用,现代 Linux 发行版普遍采用 systemd。

5. 验证

配置完成后,你可以通过以下命令检查镜像源是否设置成功:

bash 复制代码
docker info

在输出信息中,找到 Registry Mirrors 部分,如果其中显示了您配置的镜像源地址,就说明配置已经生效。

相关推荐
河南博为智能科技有限公司41 分钟前
高集成度国产八串口联网服务器:工业级多设备联网解决方案
大数据·运维·服务器·数据库·人工智能·物联网
忙里偷闲学python1 小时前
containerd_buildkitd构建镜像,告别docker构建
运维·docker·容器
liweiweili1262 小时前
Linux 中替换某个目录下所有文件中的特定字符串
linux·运维·服务器
阿拉斯攀登2 小时前
Docker 全面解析:从核心概念到实践应用
docker·云原生·容器·架构
wanhengidc2 小时前
云手机 多端互通 科技
运维·服务器·科技·游戏·智能手机
init_23612 小时前
【BGP入门专题-3】bgp路由传递规则与路由属性1
运维·网络
弓弧名家_玄真君3 小时前
Ubuntu 20.04.3 LTS 安装vnc (Xfce4 + Xvfb)
linux·运维·ubuntu
哲Zheᗜe༘3 小时前
学习K8S-Deployment资源对象
docker·容器·kubernetes
生活爱好者!3 小时前
【影视项目】NAS 部署稳定视频订阅源咪咕
服务器·网络·docker·容器·音视频