安装 Docker CE
卸载旧版 Docker,确保当前系统不存在其他旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
安装 Docker CE
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sed -i 's#download.docker.com#mirrors.ustc.edu.cn/docker-ce#' /etc/yum.repos.d/docker-ce.repo
yum install -y docker-ce # 同时安装的依赖包有:docker-ce-cli containerd.io
启动 Docker 服务
systemctl start docker
测试
docker run hello-world
更换 Docker Hub 镜像(参考下文)
mkdir -p /etc/docker
cat > /etc/docker/daemon.json << EOF
{
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
EOF
重启服务应用更改
systemctl daemon-reload
systemctl restart docker
更换镜像源
更换 Docker CE 仓库镜像
可用镜像源
- 腾讯 http://mirrors.tencent.com/docker-ce
- 中科大 https://mirrors.ustc.edu.cn/docker-ce
更换 Docker Hub 镜像缓存
Docker 默认从 https://hub.docker.com/ 仓库下载镜像
参考:
可用镜像源
- 网易 https://hub-mirror.c.163.com/
- 中科大 https://docker.mirrors.ustc.edu.cn
- 七牛 https://reg-mirror.qiniu.com
- 百度 https://mirror.baidubce.com
- 腾讯内部源 https://dockerhub.woa.com/
列举四种方法,推荐直接看第三个。
1)修改服务启动文件(不推荐)
执行以下命令检查 Docker 启动参数是否包含 --registry-mirror
选项
systemctl cat docker | grep -i "ExecStart"
2)修改 Docker 配置文件(不推荐)
参考:容器引擎CCE - 镜像仓库基本操作 | 百度智能云文档
不同系统配置文件路径不统一,可能存在以下路径:
/etc/default/docker
/etc/sysconfig/docker
配置方法也不统一,因此也不推荐:
DOCKER_OPTS="--registry-mirror=https://mirror.baidubce.com"
OPTIONS='--registry-mirror=https://mirror.baidubce.com'
3)修改 Docker 配置文件(推荐)
- Linux 配置文件:
/etc/docker/daemon.json
- Windows 配置文件:
%USERPROFILE%\.docker\daemon.json
(建议通过图形界面设置){
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
]
}
重启服务
systemctl daemon-reload
systemctl restart docker
检查返回的配置中是否包含设置的镜像地址以确定是否配置生效
docker info | grep -iA1 "Registry Mirrors"
4)直接在命令行中指定 Docker Hub 仓库地址
docker pull docker.mirrors.ustc.edu.cn/library/logstash
卸载 Docker CE
yum remove -y docker-ce
rm -fr /var/lib/docker
rm -fr /var/run/docker
groupdel docker