首页 > 系统相关 >failed to solve: process “/bin/sh -c yum -y install vim“ did not complete successfully: exit (总结)

failed to solve: process “/bin/sh -c yum -y install vim“ did not complete successfully: exit (总结)

时间:2024-08-16 18:53:54浏览次数:11  
标签:bin 构建 complete Centos vim repo exit yum 镜像

网上有好多种方法(都试过了只有方法四可以用):

方法一:systemctl  restart   docker(生产上不建议)

方法二:看看你的网络是否有问题,检查一下网络连通性

方法三:有可能是容器版本的问题,推荐使用centos7,看网上说最新的镜像会有这类的的问题

方法四:就像这个博主大佬说的修改主机源修改没用,我已经试过了,如果你不信邪你可以试试,各种源,包括阿里源,网易源等,要修改的是容器中yum源

(看了他的观点我十分同意,FROM后边跟的父镜像,这个镜像是基于父镜像构建的,那么要是下载vim的话,就是父镜像的yum源下载,而父镜像的yum源下载不了,就会导致我们构建镜像失败,因为要是在主机下载vim根本没有问题,这也就解释了为什么更换主机yum源没有用,不知道我的理解对嘛,欢迎各位大佬纠正)

不信邪的来试试:

更换的是阿里云的

wget -O /etc/yum.repo.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

yum clean all

yum makecache

下边讲一下这个博主大佬说的

首先要把把Centos-7.repo放到你Dockerfile的同级目录(有的可能叫Centos-Base.repo)

进入到你的Dockerfile然后: cp /etc/yum.repos.d/Centos-7.repo  .

然后vim dockerfile 添加ADD Centos-7.repo /etc/yum.repos.d/CentOS-Base.repo

最后构建docker build -f ./dockerfile  -t centos_7 .

docker images就可以看见你构建的镜像了

(ps:如果你真的想用自己构建的镜像创建的容器可以使用vim的话,不使用上述方法的话,你也可以配置容器数据卷,不过有一点麻烦)

 

标签:bin,构建,complete,Centos,vim,repo,exit,yum,镜像
From: https://blog.csdn.net/weixin_63793386/article/details/141266213

相关文章

  • 《艾尔登法环》游戏启动时闪退提示缺少bink2w64.dll文件该怎么修复?艾尔登法环游戏崩溃
    当系统提示缺少bink2w64.dll文件时,您不必过于担忧。可以尝试重新安装相关软件来解决,或者从正规网站下载该文件并放置到指定目录。也可以利用系统的修复工具进行修复,多种途径助您解决这一问题。本篇将为大家带来缺少bink2w64.dll文件的修复方法的内容,感兴趣的小伙伴们一起来看看......
  • redis启动失败报错:Job for redis.service failed because the control process exited
    问题描述启动报错如下:查看redis的启动信息:systemctlstatusredis.service或journalctl-xe由提示可以看不是配置文件,内存等原因造成的。解决方案原因:linux的一个安全子系统(SELinux)阻止了服务的启动。查看SELinux的工作模式cat /etc/selinux/configSELinu......
  • shell编程中的else exit -1是什么意思
    在编程中,`elseexit-1`是一种控制流语句,通常用于条件判断中。具体来说,这段代码的意思是:如果某个条件不满足(即`else`部分),则执行`exit1`,这表示程序将以状态码`-1`退出。 这里的`exit`是一个系统调用或函数,用于终止程序的执行。退出状态码是一个整数,通常用于表示程序......
  • SLF4J: Class path contains multiple SLF4J bindings. 运行报错 表示在您的应用程序
    java使用SLF4J时出现下面的错误,是因为项目中使用了多个SLF4J的类库SLF4J:ClasspathcontainsmultipleSLF4Jbindings.SLF4J:Foundbindingin[jar:file:/D:/%e5%bd%93%e5%89%8d%e5%b7%a5%e4%bd%9c/SipPBX%e8%ae%af%e6%97%b6/JoinCallOMCC/JoinCallOMCC/out/artifacts/......
  • /usr/bin/x86_64-w64-mingw32-ld: 找不到 -ldl
    问题由来:拷贝在ubuntu 下提示/usr/bin/x86_64-w64-mingw32-ld:找不到-ldl (1)原因:因为在ubuntu下缺少libdl.a库 root@blj-virtual-machine:/usr/simul/123/sourcecode#make-s/usr/bin/x86_64-w64-mingw32-ld:找不到-ldlcollect2:error:ldreturned1exits......
  • Binance 如何使用 Quickwit 构建 100PB 日志服务(Quickwit 博客)
    三年前,我们开源了Quickwit,一个面向大规模数据集的分布式搜索引擎。我们的目标很宏大:创建一种全新的全文搜索引擎,其成本效率比Elasticsearch高十倍,配置和管理显著更简单,并且能够扩展到PB级别的数据。https://quickwit.io/blog/quickwit-first-release虽然我们知道Quickw......
  • WPBT (Windows Platform Binary Table) 是一种用于在Windows启动时传递信息的结构。它
    WPBT(WindowsPlatformBinaryTable)的起源可以追溯到Windows操作系统对ACPI(AdvancedConfigurationandPowerInterface)规范的扩展需求。ACPI是一个用于管理硬件配置和电源管理的标准,广泛用于操作系统与固件之间的通信。WPBT是这种规范的一部分,专门设计用于Windows环境。......
  • 7.第二天和第三天(第三部分):Describing Signature Engines.2
    状态化signature监控不同类型的状态化切换1.ciscologin2.lpr3.smtp需要试验验证:start仅仅表示一个开始ciscodevice:仅仅只是匹配初始化时候弹出的提示符号,例如:useraccessvenfication,ciscosystemsconsole.passprompt:仅仅只是匹配一个密码提示符号,例如:password;co......
  • 7.第二天和第三天(第三部分):Describing Signature Engines
    ips的signature是被signatureengire创建的,这些engine是专门为了监控特定流量设计的,engine是senscr的一个组成部分,支持对signature的归类。engine是一个分析器和监控器。atomic:对单个包进行处理flood:监测由dos产生的攻击meta:执行事件关联normalizer:监测不明确或者异常的流......
  • 安卓笔记—binder
    binder的c实现代码我没有读,下面的笔记都是从文章中学习的https://elinux.org/Android_Binderbinder有哪些功能?跨进程传输数据,跨进程传递时机。进程是分配内存的最小单位,因此进程间不共享内存。但是内核与进程之间是一对多的关系,也就是一个内核对应多个进程,因此binder......