在 CentOS 系统上添加 Docker 官方仓库是安装和管理 Docker 的第一步。以下是详细操作步骤及常见问题的解决方案。
添加 Docker 官方仓库
运行以下命令,将 Docker 官方的社区版 (CE) 仓库添加到系统的 YUM 配置中:
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
解释
sudo: 以管理员权限运行命令。yum-config-manager: 管理 YUM 仓库的工具。--add-repo: 添加新的仓库。- URL: Docker 官方的 CentOS 仓库配置文件。
安装 Docker
添加仓库后,使用以下命令安装 Docker 及其相关组件:
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
启动和启用 Docker 服务
sudo systemctl start docker
sudo systemctl enable docker
验证安装是否成功:
sudo docker --version
注意事项
适用于 CentOS 8 或更高版本
如果您使用的是 CentOS 8 或更高版本,请将 yum 替换为 dnf:
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
常见问题及解决方案
问题1:TCP connection reset by peer 错误
该错误通常与网络连接有关,可能是由于代理、网络配置或防火墙限制引起的。
解决方法:
-
检查网络连接:
bash
curl -I https://download.docker.com/linux/centos/7/x86_64/stable/ -
清理 YUM 缓存并重试:
bash
sudo yum clean all
sudo yum makecache
sudo yum install -y docker-ce docker-ce-cli containerd.io -
配置代理(如果在公司网络或有防火墙限制):
编辑/etc/yum.conf文件,添加以下内容:
proxy=http://你的代理地址:端口
proxy_username=用户名
proxy_password=密码 -
检查 SELinux 是否阻止访问:
暂时将 SELinux 设置为宽松模式:
bash
sudo setenforce 0 -
尝试官方安装脚本:
bash
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
问题2:No more mirrors to try 错误
解决方法:
- 查看可用的 Docker 版本并安装旧版本:
“`bash
yum list docker-ce –showduplicates | sort -r
# 安装特定的稳定版本,例如:
sudo yum install -y docker-ce-20.10.24 docker-ce-cli-20.10.24 containerd.io
“`
- 切换到国内镜像源:
阿里云镜像源:
bash
sudo yum-config-manager --disable docker-ce-stable
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum clean all
sudo yum makecache
sudo yum install -y docker-ce docker-ce-cli containerd.io
清华大学镜像源:
bash
sudo sed -i 's+download.docker.com+mirrors.tuna.tsinghua.edu.cn/docker-ce+' /etc/yum.repos.d/docker-ce.repo
sudo yum makecache
sudo yum install -y docker-ce docker-ce-cli containerd.io
- 离线安装:
如果网络问题无法解决,可以手动下载 RPM 包并安装:
bash
sudo rpm -ivh docker-ce*.rpm
结语
通过以上步骤,您应该能够成功在 CentOS 系统上安装 Docker。如果问题仍未解决,可以尝试切换镜像源或离线安装方式。一旦安装完成,请记得启动和启用 Docker 服务:
sudo systemctl start docker
sudo systemctl enable docker
sudo docker --version
需要进一步帮助时,请随时联系!