记录一下在 build Dockerfile 的时候出现以下报错的解决过程:

环境 Centos8 

执行以下命令

[root@localhost mydocker]# docker build -f /mydocker/Dockerfile2 -t mycentos:1.3 . 

报上面的错。

1、检查是否可以连接外网   ping www.baidu.com   # 可以 ping 通百度

2、systemctl stop firewalld.service                          # 停止防火墙 


3、修改软件源

  1. vim CentOS-Base.repo
  2. vim CentOS-AppStream.repo
  3. vim CentOS-Extras.repo

将文件中三文件中的 mirrorlist注释,将baseurl 修改为阿里源
为 baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/  

完成了以上三步,还是报同样的错:

Error: Failed to download metadata for repo 'AppStream'

Error: Failed to download metadata for repo 'AppStream'

The command '/bin/sh -c yum -y install vim' returned a non-zero code: 1

4、下载阿里源:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

[root@localhost ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo

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

6、重启docker服务【 重要 】

       systemctl restart docker

7、再执行命令(执行成功 ):

[root@localhost mydocker]# docker build -f /mydocker/Dockerfile2 -t mycentos:1.3 . 

 

相关命令:

查询yum源   yum repolist

 

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐