1. 两种异常情况
1.1 podman与docker冲突
由于CentOS8默认安装了podman,因此在CentOS8中安装docker会导致冲突引发如下异常。
在部分场景中却不得不使用docker,因为podman是新东西,即便命令和docker及其相似,也因为生态原因,各类API还无法完全兼容。由于使用了开源项目dockerode对docker进行控制,因此需要
卸载podman改用docker
。
卸载podman
yum -y erase podman buildah
安装docker
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh --mirror Aliyun
1.2 CentOS的yum源出问题
最典型的错误是AppStream,下载元数据失败
Failed to download metadata for repo 'AppStream' Error: Failed to download metadata for repo 'AppStream'
我认为的解决办法:重新加载yum源————删除yum源,重新安装
进入目录
cd /etc/yum.repos.d
删除/etc/yum.repos.d目录下所有的配置文件
rm -rf ./*
下载centos8的镜像源
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-8.repo
清除所有文件
yum -y clean all
建立缓存
yum -y makecache
此时,yum源就安装好了,一般来说,不会出现上面的错误了
安装docker
curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh --mirror Aliyun
最后,验证下docker是否安装完成
docker --version