#如果安装过docker 先卸载docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
#使用yum安装
sudo yum install -y yum-utils
#由于国内网络问题,添加国内yum源
sudo yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
#安装containerd.io
根据版本选择一个:
1. yum install -y https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.13-3.1.el7.x86_64.rpm
2. yum install https://download.docker.com/linux/centos/8/x86_64/stable/Packages/containerd.io-1.4.3-3.1.el8.x86_64.rpm
#查看可安装的docker 版本
sudo yum list docker-ce --showduplicates | sort -r
#安装docker-ce
sudo yum install docker-ce-3:20.10.1-3.el7
#由于 CentOS8 防火墙使用了 nftables,但 Docker 尚未支持 nftables, 我们可以使用如下设置使用 iptables:
#更改 /etc/firewalld/firewalld.conf
FirewallBackend=iptables
#或者执行:
firewall-cmd --permanent --zone=trusted --add-interface=docker0
firewall-cmd --reload
#启动docker
sudo systemctl enable docker
sudo systemctl start docker
#配置docker 加速镜像
#请首先执行以下命令,查看是否在 docker.service 文件中配置过镜像地址。
systemctl cat docker | grep '\-\-registry\-mirror'
#如果该命令有输出,那么请执行 $ systemctl cat docker 查看 ExecStart= 出现的位置,修改对应的文件内容去掉 --registry-mirror 参数及其值,并按接下来的步骤进行配置。
#如果以上命令没有任何输出,那么就可以在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):
# 阿里云的用前两个。腾讯云的服务器 把第三个放最上面。 ***差别很大
{
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
"https://mirror.ccs.tencentyun.com"
]
}
#接着重启docker
sudo systemctl daemon-reload
sudo systemctl restart docker
#查看是否设置成功:
docker info
#在显示的信息中找到 Registry Mirrors: