一 配置阿里云的Yum镜像源
配置阿里云的Yum镜像源可以提高下载速度,尤其是在国内网络环境下。以下是配置阿里云Yum镜像源的步骤:
1. 备份原有的Yum源配置文件
首先,备份系统现有的Yum源配置文件,以防出现问题时可以还原:
sudo mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
2. 下载阿里云的Yum源配置文件
接下来,下载阿里云提供的CentOS镜像源配置文件。根据你的CentOS版本(如7),使用以下命令:
CentOS 7:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
CentOS 8:
sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
3. 清理并重新生成Yum缓存
下载完阿里云的源文件后,清理旧的Yum缓存并重新生成新的缓存:
sudo yum clean all
sudo yum makecache
4. 验证配置
运行以下命令查看Yum仓库是否配置正确,并确保阿里云源已经启用:
yum repolist
这将列出所有已启用的仓库,确认输出结果中有阿里云的镜像源。
5. 更新系统(可选)
如果阿里云的源已经配置成功,你可以更新系统以确保所有软件包来自阿里云的镜像源:
sudo yum update -y
6. 手动编辑 .repo
文件(可选)
如果你想手动编辑或调整配置文件,可以打开 /etc/yum.repos.d/CentOS-Base.repo
文件进行修改:
sudo vi /etc/yum.repos.d/CentOS-Base.repo
确保 baseurl
指向的是阿里云的镜像地址,类似如下:
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
通过这些步骤,你应该可以成功配置阿里云的Yum镜像源,提高在国内使用CentOS的下载速度和软件包管理效率。
二 通过阿里云镜像源安装Docker
以下是在CentOS 7上使用阿里云镜像源安装Docker的步骤:
1. 设置阿里云的Docker仓库
首先,需要将阿里云的Docker镜像源配置到你的系统中。
-
创建Docker的Yum仓库配置文件:
sudo vi /etc/yum.repos.d/docker.repo
-
在文件中添加以下内容(阿里云的Docker镜像源):
[docker-ce-stable] name=Docker CE Stable - $basearch baseurl=https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/stable enabled=1 gpgcheck=1 gpgkey=https://mirrors.aliyun.com/docker-ce/linux/centos/gpg
-
保存并退出文件。
2. 安装Docker依赖
安装一些必要的依赖包:
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
3. 安装Docker CE
使用以下命令从阿里云镜像源安装Docker CE(社区版):
sudo yum install docker-ce docker-ce-cli containerd.io
4. 启动Docker服务
安装完成后,启动Docker并设置为开机自启动:
sudo systemctl start docker
sudo systemctl enable docker
5. 验证Docker安装
运行以下命令确认Docker是否正确安装:
docker --version
6. 测试Docker
使用官方的 hello-world
容器来测试Docker是否正常运行:
sudo docker run hello-world
如果输出 Hello from Docker!
,则说明Docker安装成功并正常工作。
7. 配置非root用户使用Docker(可选)
-
将当前用户添加到
docker
用户组:sudo usermod -aG docker $(whoami)
-
重新登录或注销再登录。
-
验证非root用户是否可以运行Docker:
docker ps
总结
通过阿里云的镜像源安装Docker,不仅可以加速下载速度,还能确保稳定性。通过以上步骤,你可以在CentOS 7上成功安装并配置Docker。
三 Docker Hub下载速度慢的解决方案
1. 配置 Docker 国内镜像加速器
国内的一些云服务商提供了 Docker 镜像加速器,可以加速从 Docker Hub 拉取镜像。以下是几家常用的镜像加速器及其配置方法:
阿里云镜像加速器
-
登录阿里云容器镜像服务(ACR)控制台,找到 镜像加速器 页面。
-
获取你专属的加速器地址,类似于
https://<your-region>.mirror.aliyuncs.com
。 -
编辑
/etc/docker/daemon.json
文件(如果文件不存在,手动创建)。sudo vi /etc/docker/daemon.json
-
添加以下内容,将
<your-region>
替换为你从阿里云获取的镜像加速器地址:{"registry-mirrors": ["https://<your-region>.mirror.aliyuncs.com"] }
-
保存文件并重新启动 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
-
验证是否成功配置镜像加速器:
docker info
你应该能在输出中看到
Registry Mirrors
部分显示为你配置的加速器地址。
网易云镜像加速器
-
编辑
/etc/docker/daemon.json
:sudo vi /etc/docker/daemon.json
-
添加网易云镜像加速器地址:
{"registry-mirrors": ["https://hub-mirror.c.163.com"] }
-
重新启动 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
中国科技大学(USTC)镜像加速器
-
编辑
/etc/docker/daemon.json
:sudo vi /etc/docker/daemon.json
-
添加 USTC 镜像加速器地址:
{"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] }
-
重新启动 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
DaoCloud 镜像加速器
-
编辑
/etc/docker/daemon.json
:sudo vi /etc/docker/daemon.json
-
添加 DaoCloud 镜像加速器地址:
{"registry-mirrors": ["https://f1361db2.m.daocloud.io"] }
-
重新启动 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
2. 手动下载 Docker 镜像
如果加速器仍然不能满足你的需求,你可以通过其他网络环境较好的机器手动下载镜像,并通过 docker save
和 docker load
命令在不同机器间传递镜像。
手动下载并导出镜像:
-
在网络较好的机器上使用 Docker 命令拉取镜像:
docker pull <image-name>
-
导出镜像为 tar 文件:
docker save -o <image-name>.tar <image-name>
-
将导出的镜像文件传输到目标机器(例如通过
scp
或者rsync
)。 -
在目标机器上使用
docker load
导入镜像:docker load -i <image-name>.tar
3. 切换到其他网络
如果镜像加速器和手动下载都无法满足需求,可能是由于当前网络环境的问题。可以尝试使用更稳定、速度更快的网络。换网络确实有用,亲测!(无线网更换为个人热点,可能我无线网太差了)
4. 订阅阿里云 ACR 的海外镜像源
如果你使用阿里云 ACR,阿里云支持订阅 Docker Hub 的海外源镜像,直接从 ACR 中拉取镜像,而不是直接访问 Docker Hub。这是另一种提升镜像拉取速度的方式,尤其是在企业级环境中。
5. 使用代理加速
可以配置 HTTP 代理或 VPN 加速网络访问,尤其是在访问 Docker Hub 的网络环境较差时,这种方法可以有效提升速度。
配置 Docker 使用 HTTP 代理:
-
编辑 Docker 的 systemd 配置文件:
sudo mkdir -p /etc/systemd/system/docker.service.d sudo vi /etc/systemd/system/docker.service.d/http-proxy.conf
-
添加以下内容,替换
<proxy-address>
为你的代理地址:[Service] Environment="HTTP_PROXY=http://<proxy-address>:<port>" Environment="HTTPS_PROXY=http://<proxy-address>:<port>"
-
重新加载 systemd 并重启 Docker:
sudo systemctl daemon-reload sudo systemctl restart docker
总结
- 配置国内的 Docker 镜像加速器(阿里云、网易云、USTC、DaoCloud 等)。
- 手动在网络较好的环境下载 Docker 镜像并传输到目标机器。
- 切换到更稳定的网络环境或配置代理加速。
- 使用阿里云 ACR 的海外镜像源功能订阅 Docker Hub 镜像。
这些方法都可以有效加快 Docker Hub 镜像的下载速度,解决下载慢的问题。