docker容器调用yum报错的解决办法

docker容器调用yum报错的解决办法,第1张

docker容器调用yum报错的解决办法

在本文的内容中,我将与您分享在docker容器中启用yum错误报告的解决方案。感兴趣的朋友可以参考一下。

在dockerfile或者容器中执行yum的时候找不到源码(baseurlxxx无效),但是在主机上执行yum就没有问题了。为什么?

无论是dockerfile使用RUN关键字执行yum,还是直接进入容器执行yum,都是应用程序的docker镜像系统中的源码(CentOS在路径/etc/yum.repo.d/CentOS-base.repo中),所以需要将主机上相同路径的源码复制到容器中。然后docker提交了一个新的“基本镜像系统”。这时候应用dockerbuildxxx(即应用Dockerfile的方法)就不容易报错了。

复制模式dockercpxxxxxx

内容扩展

dockerfile中的实际yum *** 作报告了一个错误

让我们先来看看错误消息:

将构建上下文发送到Docker守护进程9.363MB
步骤1:从Docker.io/centos
->;196E0ce0c9FB
第二步:维修员刘亮亮
->;使用缓存
->;7d7e06799c20
第三步:添加文件/Tomcat7.tgz/usr/local/
->;使用缓存
->;10ffdea53a02
第四步:运行yuminstallJava-1.8.0-openJDK-y
->;在7824a339e077
中运行加载的插件:fastestmirror,ovl


其中一个配置的存储库失败(未知),
,yum没有足够的缓存数据继续。此时,百胜唯一
安全的做法就是失败。有几种方法可以解决这个问题:

1.联系仓库的上游,让他们解决问题。

2.重新配置baseurl/etc。对于存储库,指向一个工作的
上游。如果您使用的
发行版本比存储库所支持的版本更新(并且以前发行版本的
包仍然有效),这通常是非常有用的。

3.在暂时禁用存储库的情况下运行该命令
yum-disablerepo=<;repoid>...

4.永久禁用存储库,所以yum默认情况下不会使用它。然后,yum
将忽略该存储库,直到您再次永久启用它
或使用-enablerepo进行临时使用:

yum-config-manager-disable<;repoid>

订阅-管理器回购-禁用=<repoid>

5.如果失败的存储库不可用,请将其配置为跳过。
注意,百胜会尝试联系回购。当它运行大多数命令时,
so每次都必须尝试并失败(因此。yum会慢很多
)。如果这是一个非常暂时的问题,这通常是一个不错的
折衷方案:

yum-config-manager-save-setopt=<;repoid>。skip_if_unavailable=true

找不到repo的有效baseURL:base/7/x86_64
无法检索mirrorlisthttp://mirrorlist.centos.org/?版本=7&arch=x86_64&回购=os&infra=容器错误为
14:curl#6-"无法解析主机:mirrorlist.centos.org;未知错误“
命令“/bin/sh-cyuminstallJava-1.8.0-openJDK-y”返回了非零代码:1

解决方案:

只需将DNS服务项添加到resolv.conf文档中。这个文档在/etc,plus下

名称服务器8.8.8.8
名称服务器8.8.4.4
搜索本地域

就是这样。

到目前为止,本文已经详细介绍了使用yum报告docker容器中的错误的解决方案。关于如何解决使用yum在docker容器中报告错误的问题,请搜索您以前的文章或再次访问下面的相关文章。期待你以后的申请!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/774583.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存