Centos安装Docker报错 No more mirrors to try.

在CentOS 7系统中,yum是管理软件包的核心工具,当我们在 yum instll python3 时发生以下报错:

 

原因是官方把地址改了,所以解决起来也很简单,直接把地址改成阿里云的。

修改yum源

sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo
sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo
sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo

修改完源之后重新生成缓存

sudo yum clean all
yum makecache

 

但是由于国内网络无法连接到 Docker 官方仓库。出现 "TCP connection reset by peer" 通常是网络问题或仓库地址问题。以下是解决方案:

方案1:使用国内镜像源(推荐给国内用户)

# 1. 备份并删除 Docker 官方仓库
rm -f /etc/yum.repos.d/docker-ce.repo

# 2. 添加阿里云 Docker 镜像源
cat > /etc/yum.repos.d/docker-ce.repo << 'EOF'
[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
EOF

# 3. 更新缓存
yum clean all
yum makecache

# 4. 安装 docker-compose-plugin
yum install -y docker-compose-plugin

 

方案2:手动下载 RPM 包安装

# 1. 从其他源下载 RPM 包(需要手动查找可用的镜像)
# 例如:https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/

# 2. 下载 docker-compose-plugin(以 2.24.6 为例)
wget https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/docker-compose-plugin-2.24.6-1.el7.x86_64.rpm

# 3. 安装
yum localinstall -y docker-compose-plugin-*.rpm

 

 

一键安装脚本:

#!/bin/bash
# Docker Compose 一键安装脚本(绕过 yum 仓库问题)

echo "正在安装 Docker Compose v2.27.1..."

# 使用 DaoCloud 镜像下载
COMPOSE_URL="https://get.daocloud.io/docker/compose/releases/download/v2.27.1/docker-compose-linux-x86_64"

if curl -L "$COMPOSE_URL" -o /usr/local/bin/docker-compose 2>/dev/null; then
    echo "下载成功!"
else
    echo "使用备用镜像..."
    curl -L "https://ghproxy.com/https://github.com/docker/compose/releases/download/v2.27.1/docker-compose-linux-x86_64" -o /usr/local/bin/docker-compose
fi

# 设置权限
chmod +x /usr/local/bin/docker-compose

# 创建插件目录
mkdir -p /usr/libexec/docker/cli-plugins
ln -sf /usr/local/bin/docker-compose /usr/libexec/docker/cli-plugins/docker-compose

# 创建全局命令别名
ln -sf /usr/local/bin/docker-compose /usr/bin/docker-compose

# 验证安装
echo "验证安装..."
docker-compose --version

if [ $? -eq 0 ]; then
    echo "✓ Docker Compose 安装成功!"
    echo "可用命令:"
    echo "  docker-compose --version"
    echo "  docker compose version"
else
    echo "✗ 安装失败,请检查网络连接"
fi

 

posted @ 2026-01-08 15:47  Colin.liu  阅读(29)  评论(0)    收藏  举报