在容器中建立的自己的centos,遇見的報錯:Errors during downloading metadata for repository 'appstream':
阿新 • • 發佈:2022-03-13
編寫Dockerfile檔案
vim mydockerfile-centos
FROM centos MAINTAINER zhaowx<549334961@qq.com> ENV MYPATH /usr/local WORKDIR $MYPATH RUN yum install -y vim net-tools tcpdump EXPOSE 80 CMD echo $MYPATH CMD echo "---------end---------" CMD /bin/bash
通過剛剛編寫的Dockerfile,構建映象
docker build -f mydockerfile-centos -t mycentos:0.2.
解決思路
由於centos8的官方映象已經停止維護,而docker pull預設是last版本,也就是centos8,所以有了以下兩種解決辦法
1.刪除最新映象,拉取7版本的映象
FROM centos:7.9.2009 MAINTAINER zhaowx<549334961@qq.com> ENV MYPATH /usr/local WORKDIR $MYPATH RUN yum install -y vim net-tools tcpdump EXPOSE 80 CMD echo $MYPATH CMD echo "---------end---------" CMD/bin/bash
2.在Dockerfile中安裝命令之前,執行修改配置,將映象改為【https://vault.centos.org】
FROM centos MAINTAINER zhaowx<549334961@qq.com> ENV MYPATH /usr/local WORKDIR $MYPATH RUN sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-* RUN sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-* RUN sed -i 's|gpgcheck=1|gpgcheck=0|g' /etc/yum.repos.d/CentOS-* RUN yum clean all ; yum makecache RUN yum install -y vim net-tools tcpdump EXPOSE 80 CMD echo $MYPATH CMD echo "---------end---------" CMD /bin/bash