docker的centos容器使用yum报错

错误描述

学习docker过程中,基于 centos 镜像自定义新的镜像。拉取一个Centos镜像,并运行容器,容器安装vim,报错了。

报错:Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist

问题分析

✨第一种可能的情况便是网络连接问题。检查是否可以连接外部网络,可以使用 ping baidu.com 查看是否有丢包情况。如果丢包,则进一步检查网络连接是否正常;如果没有丢包,继续阅读下文

✨那么第二种情况,便是 CentOS 已经停止维护的问题。2020 年 12 月 8 号,CentOS 官方宣布了停止维护 CentOS Linux 的计划,并推出了 CentOS Stream 项目,CentOS Linux 8 作为 RHEL 8 的复刻版本,生命周期缩短,于 2021 年 12 月 31 日停止更新并停止维护(EOL),更多的信息可以查看 CentOS 官方公告。如果需要更新 CentOS,需要将镜像从 mirror.centos.org 更改为 vault.centos.org

解决方案

🥎那么针对上面提到的第二种情况,给出的解决方法如下:

🔔 首先,进入到 yum 的 repos 目录

bash 复制代码
cd /etc/yum.repos.d/

🔔其次,修改 centos 文件内容

bash 复制代码
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

🔔 然后,生成缓存更新(第一次更新,速度稍微有点慢,耐心等待 2min 左右)

bash 复制代码
yum makecache

🔔 最后,运行 yum update 并重新安装 vim

bash 复制代码
yum update -y
yum -y install vim

参考

https://blog.csdn.net/weixin_43252521/article/details/124409151

相关推荐
晚风吹长发4 小时前
Docker基础——Docker Network(网络详解)
linux·运维·网络·ubuntu·docker·容器
ji_shuke8 小时前
从零深入:基于 Playwright + Pytest + Allure 的企业级 Web 端到端自动化测试框架实战
前端·自动化测试·docker·jenkins·pytest·allure·playwright
张忠琳9 小时前
【NVIDIA】k8s-device-plugin v0.19.3 标签管理模块 (internal/lm) 深度分析之六
云原生·容器·架构·kubernetes·nvidia
小匠石钧知9 小时前
02_在多个RockyLinux10虚拟机上安装k8s集群
云原生·容器·kubernetes·k8s
霁月的小屋11 小时前
Docker 工程化实践(六):Docker Compose 管理多容器应用
运维·docker·容器
江湖有缘11 小时前
Docker实战 | 使用Docker部署EasyNode服务器面板工具
服务器·docker·容器
心机之蛙qee11 小时前
Docker Compose 多容器编排
java·docker·容器
AI大佬的小弟12 小时前
私有化 Dify 应用开发(1):Dify 入门|Docker 一键部署全流程
docker·大模型落地·ai 应用开发·dify 教程·私有化 ai 部署·docker 实战·开源 ai 平台
ShiXZ21313 小时前
Docker 安装 Elasticsearch 7.17.6 完整教程
elasticsearch·docker·容器
名字还没想好☜14 小时前
Kubernetes Pod 调度实战:nodeSelector、亲和性与 taint/toleration 把 Pod 放到指定节点
运维·云原生·容器·kubernetes·调度