【问题标题】:docker build failed No repomd filedocker build failed 没有repomd文件
【发布时间】:2017-08-24 11:13:56
【问题描述】:

尝试构建 docker 镜像

docker build INGInious-Docker

Dockerfile 是

# DOCKER-VERSION 1.1.0

#inherit from the default container, which have all the needed script to launch tasks
FROM    ingi/inginious-c-cpp
LABEL org.inginious.grading.name="intro_v2"

# Update yum, install pip, update pip
RUN     yum -y update
RUN     yum -y install gcc-c++
RUN     yum -y install python-pip
RUN pip install --upgrade pip

# Install git
RUN     yum -y install git

# Install Scenario
RUN     pip install --upgrade  git+https://github.com/shlomihod/scenario.git 

不得不说这个Dockerfile在2个月前就成功搭建了。我所做的只是更改名称 来自LABEL org.inginious.grading.name="intro" toLABEL org.inginious.grading.name="intro_v2"`

得到这个输出:

Sending build context to Docker daemon  22.02kB
Step 1/8 : FROM ingi/inginious-c-cpp
 ---> 9f81381415b0
Step 2/8 : LABEL org.inginious.grading.name "intro_v2"
 ---> Using cache
 ---> 33750672d068
Step 3/8 : RUN yum -y update
 ---> Running in bb81fcdbb49a
Loaded plugins: fastestmirror, ovl


 One of the configured repositories failed (Unknown),
 and yum doesn't have enough cached data to continue. At this point the only
 safe thing yum can do is fail. There are a few ways to work "fix" this:

     1. Contact the upstream for the repository and get them to fix the problem.

     2. Reconfigure the baseurl/etc. for the repository, to point to a working
        upstream. This is most often useful if you are using a newer
        distribution release than is supported by the repository (and the
        packages for the previous distribution release still work).

     3. Run the command with the repository temporarily disabled
            yum --disablerepo=<repoid> ...

     4. Disable the repository permanently, so yum won't use it by default. Yum
        will then just ignore the repository until you permanently enable it
        again or use --enablerepo for temporary usage:

            yum-config-manager --disable <repoid>
        or
            subscription-manager repos --disable=<repoid>

     5. Configure the failing repository to be skipped, if it is unavailable.
        Note that yum will try to contact the repo. when it runs most commands,
        so will have to try and fail each time (and thus. yum will be be much
        slower). If it is a very temporary problem though, this is often a nice
        compromise:

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

File /var/cache/yum/x86_64/7/epel/metalink.xml does not exist
Could not parse metalink https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=x86_64 error was
No repomd file
The command '/bin/sh -c yum -y update' returned a non-zero code: 1

【问题讨论】:

  • Could not parse metalink https://mirrors.fedoraproject.org/metalink这似乎是问题的根源,它有效吗?
  • @user2915097 看我的回答。
  • 好的。对此感到抱歉。

标签: linux docker centos


【解决方案1】:

问题出在intro_v2这个名字上,非常奇怪 我已将其更改为 intro2 没有 _ 并且它有效。

【讨论】:

    猜你喜欢
    • 2019-07-02
    • 2013-06-01
    • 2018-07-31
    • 2022-01-15
    • 2017-07-02
    • 1970-01-01
    • 2015-10-24
    • 2021-11-16
    • 2020-05-11
    相关资源
    最近更新 更多