gpt4 book ai didi

docker - Yum 更新失败 -Centos 7 - dockerbuild

转载 作者:行者123 更新时间:2023-12-01 14:36:11 37 4
gpt4 key购买 nike

我经常使用 centos 7 作为基础镜像构建 docker 容器。但是现在我在运行时遇到错误,

RUN yum update add \
bash \
&& rm -rfv /var/cache/apk/*

ERROR:
Loaded plugins: fastestmirror, ovl

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

  1. 联系存储库的上游并让他们解决问题。

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

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

  4. 永久禁用存储库,因此 yum 默认不会使用它。百胜然后将忽略存储库,直到您永久启用它再次或使用 --enablerepo临时使用:

    yum-config-manager --disable <repoid>

    `subscription-manager repos --disable=<repoid>`
  5. 配置要跳过的失败存储库,如果它不可用。请注意,yum 将尝试联系 repo。当它运行大多数命令时,所以每次都必须尝试失败(因此。百胜会很多慢点)。如果这是一个非常暂时的问题,这通常是一个很好的妥协:

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

Cannot find a valid baseurl for repo: base/7/x86_64 Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=container error was 14: curl#6 - "Could not resolve host: mirrorlist.centos.org; Name or service not known" The command '/bin/sh -c yum update add
bash && rm -rfv /var/cache/apk/*' returned a non-zero code: 1

我也看到了一些使用“dhclient”的解决方案,但是当我执行 docker-compose build 时会发生此错误。

最佳答案

我尝试在两个不同的平台上运行相同的 Dockerfile 时遇到了这个问题,它使用 yum 获取了多个软件包;一个 macOS,另一个是基于 Ubuntu 16.04 的 Linux 操作系统(elementaryOS Loki),两者都使用来自 docker.com 的官方软件包。

我的 理论是,Linux 软件包在安全方面比 macOS 软件包更具限制性。也许这可以通过某种 /etc/something 配置文件进行配置,但我没有 Docker 的专业知识可以肯定地说。 EDIT:请参阅下面的评论。

可以说的是我在 macOS (10.11 El Capitan) 上不需要额外的配置;只是 docker build . 工作正常,并且 Dockerfile 中的 yum 进程能够访问所有远程存储库。

然而,在 Ubuntu 派生的 Linux 发行版中,有必要使用

docker build --network host .

紧随其后

docker run -it --network host <image> <command>

当我想在该图像中运行需要互联网访问的进程时。

其他 Debian 衍生系统也可能是这种情况。

当然,当允许长时间运行的 Docker 容器不受限制地通过主机网络适配器进行通信时,需要考虑安全因素,最好查看 the appropriate documentation在这方面。

关于docker - Yum 更新失败 -Centos 7 - dockerbuild,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49779741/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com