Linux docker生成失败,没有repomd文件
试图建立一个docker形象Linux docker生成失败,没有repomd文件,linux,docker,centos,Linux,Docker,Centos,试图建立一个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
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
在两个月前成功构建。我只是换了个名字
从LABEL org.inginious.grading.name=“intro”到LABEL org.inginious.grading.name=“intro\u 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
将生成上下文发送到Docker守护程序22.02kB
步骤1/8:来自ingi/Ingious-c-cpp
--->9f81381415b0
步骤2/8:标记org.inginius.grading.name“intro_v2”
--->使用缓存
--->33750672d068
步骤3/8:运行yum-y更新
--->在bb81fcdbb49a中运行
加载的插件:FastTestMirror、ovl
其中一个配置的存储库失败(未知),
而且yum没有足够的缓存数据继续。在这一点上,唯一的
百胜可以做的安全事情就是失败。有几种方法可以“修复”此问题:
1.联系上游的存储库,让他们解决问题。
2.为存储库重新配置baseurl/etc,以指向工作
上游如果您使用的是较新的
存储库(以及
上一个发行版的包仍然有效)。
3.在暂时禁用存储库的情况下运行该命令
yum--disablerepo=。。。
4.永久禁用存储库,因此默认情况下,yum不会使用它。好吃
然后将忽略存储库,直到您永久启用它
再次或使用--enablerepo临时使用:
yum配置管理器--禁用
或
订阅管理器repos--禁用=
5.如果失败的存储库不可用,请将其配置为跳过。
请注意,yum将尝试联系repo。当它运行大多数命令时,
因此,每次都必须尝试失败(因此,百胜将是非常重要的)
较慢)。如果这是一个非常暂时的问题,这通常是一个很好的解决方案
妥协:
yum config manager--save--setopt=.skip_if_unavailable=true
文件/var/cache/yum/x86_64/7/epel/metalink.xml不存在
无法分析metalinkhttps://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=x86_64错误为
没有repomd文件
命令'/bin/sh-c yum-y update'返回一个非零代码:1
非常奇怪的是,这个问题的名称是简介v2
我把它改成了intro2
,没有。
,它成功了 请参阅无法分析metalinkhttps://mirrors.fedoraproject.org/metalink
这似乎是问题的根源,它有效吗?@user2915097查看我的答案。好的。对不起。