美文网首页
使用Dockerfile时Error: Failed to do

使用Dockerfile时Error: Failed to do

作者: f109 | 来源:发表于2020-05-26 00:28 被阅读0次

    跟着教程使用指令docker build -f /mydocker/Dockerfile -t mytomcat:1.1 .时出现了以下错误:

    Failed to download metadata for repo 'AppStream'Error: Failed to download metadata for repo 'AppStream'
    在网上找了很多教程大多一知半解,而且大多都是2-3年前的了,并且没有作用,经过一晚上的尝试终于解决了这个问题,在此记录一下,希望小伙伴们能愉快解决这个问题
    激动人心的Successfully

    但是由于途中经过了太多的尝试,不能完全确定究竟是哪个方法生了效便一并写在这里,下次再实验的时候加以测试,再来完善,如果有大佬也多谢指正。

    方法一:修改源

    1.检查网络是否联通
    随便ping一个网站即可,例如:ping www.baidu.com

    2.关闭防火墙
    systemctl stop firewalld.service(我第一次实验的时候就是使用这个方法,但是没有进行这一步,再第二种方法之后又进行了这一步并重启docker 最后居然成功了)

    3.修改软件源
    /etc/repos.d文件夹下有CentOS-Base.repo CentOS-AppStream.repo CentOS-Extras.repo这三个文件,将三个文件中的mirrow注释掉,设置baseurl 为阿里源

    试错的时候阿里源都加了几个.........

    4.命令行下载阿里源
    指令为:wget -O /etc/yum.repos.d/CentOS-Base.repo [http://mirrors.aliyun.com/repo/Centos-8.repo](http://mirrors.aliyun.com/repo/Centos-8.repo)(Centos8根据系统版本修改就好了,我的是CentOS8)

    5.运行 yum makecache 生成缓存(或 yum clean all&&yum makecache

    6.重启Docker服务
    service docker restart

    方法二:下载ssh

    yum install openssh openssh-server openssh-clients

    没错就只下了个ssh,当时我也是非常怀疑,并且原帖使用此指令后出了错,而我没有出现,于是我就顺便把方法一的时候没关的防火墙关掉了,然后重启了一下Docker,然后就成功了。真是不可思议。
    小伙伴们可以先按照方法一步不差的走一遍(不要学我跳过关防火墙),然后实验一下,如果不行的话再进行方法二。
    方法二虽然看似简单,但是如果出错了处理很麻烦,所以优先使用方法一(而且个人感觉方法一的软件源才是问题的关键)

    之后我再次实验后来更新的更准确一些。

    参考了这两个帖子:
    方法一,但是没写三个文件的路径
    方法二,包括安装ssh时出错的解决办法

    相关文章

      网友评论

          本文标题:使用Dockerfile时Error: Failed to do

          本文链接:https://www.haomeiwen.com/subject/luypahtx.html