Docker File創(chuàng)建鏡像失敗ERROR [3/4] RUN yum -y install vim的解決
問(wèn)題復(fù)現(xiàn)
使用以下內(nèi)容的Docker File創(chuàng)建鏡像:
FROM centos MAINTAINER xxxxx<xxxxxxxxx@qq.com> ENV MYPATH /usr/local WORKDIR $MYPATH RUN yum -y install vim RUN yum -y install net-tools EXPOSE 80 CMD echo $MYPATH CMD echo "============" CMD /bin/bash
錯(cuò)誤描述:
=> ERROR [3/4] RUN yum -y install vim
------
> [3/4] RUN yum -y install vim:
#0 1.627 CentOS Linux 8 - AppStream 61 B/s | 38 B 00:00
#0 1.664 Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
------
--------------------
5 | WORKDIR $MYPATH
6 |
7 | >>> RUN yum -y install vim
8 | RUN yum -y install net-tools
9 |
--------------------
ERROR: failed to solve: process "/bin/sh -c yum -y install vim" did not complete successfully: exit code: 1
解決問(wèn)題方法
分析問(wèn)題
> [3/4] RUN yum -y install vim:
#0 1.627 CentOS Linux 8 - AppStream 61 B/s | 38 B 00:00
#0 1.664 Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: No URLs in mirrorlist
由上錯(cuò)誤描述可知:?jiǎn)栴}是由于最新版本CentOS Linux 8中vim軟件資源下載失敗導(dǎo)致。
解決問(wèn)題
添加版本信息并修改為7即可。
FROM centos:7 # 添加版本 MAINTAINER xxxxx<xxxxxxxxx@qq.com> ENV MYPATH /usr/local WORKDIR $MYPATH # 由于centos7停止服務(wù),這里使用阿里云提供的centos7鏡像.2024-08-04 RUN curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo RUN yum makecache RUN yum -y install vim RUN yum -y install net-tools EXPOSE 80 CMD echo $MYPATH CMD echo "============" CMD /bin/bash
完成結(jié)果
[+] Building 34.8s (8/8) FINISHED => [internal] load build definition from mycentos 0.0s => => transferring dockerfile: 306B 0.0s => [internal] load .dockerignore 0.0s => => transferring context: 2B 0.0s => [internal] load metadata for docker.io/library/centos:7 0.3s => [1/4] FROM docker.io/library/centos:7@sha256:9d4bcbbb213dfd745b58be38b13b996ebb5 0.0s => CACHED [2/4] WORKDIR /usr/local 0.0s => [3/4] RUN yum -y install vim 29.1s => [4/4] RUN yum -y install net-tools 2.8s => exporting to image 2.2s => => exporting layers 2.2s => => writing image sha256:9a4f44d6f8c3f8cb6e515e5183feb133ff89e3bc0a8b0597b5aec81f 0.0s => => naming to docker.io/library/chengxcentos:1.0 0.0s
注意:docker拉取鏡像默認(rèn)為最新版本。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL docker容器數(shù)據(jù)更新統(tǒng)計(jì)shell腳本代碼方式
本文介紹了如何創(chuàng)建和配置一個(gè)腳本文件,使其能夠每隔一小時(shí)執(zhí)行一次,用于更新MySQL統(tǒng)計(jì)信息,腳本使用Docker來(lái)執(zhí)行MySQL命令,并將結(jié)果保存到文件中,文章還強(qiáng)調(diào)了權(quán)限設(shè)置和配置定時(shí)任務(wù)的步驟2025-01-01
使用docker部署mysql并開(kāi)啟binlog的方法
本文介紹了如何使用Docker部署MySQL服務(wù)并配置開(kāi)啟binlog,以便通過(guò)Flink CDC Connector實(shí)現(xiàn)對(duì)MySQL數(shù)據(jù)的實(shí)時(shí)同步,有需要的朋友可以借鑒參考下,希望能夠有所幫助2022-02-02
解決docker訪(fǎng)問(wèn)外部https數(shù)字證書(shū)問(wèn)題
這篇文章主要介紹了docker訪(fǎng)問(wèn)外部https數(shù)字證書(shū)問(wèn)題,為了解決證書(shū)驗(yàn)證的問(wèn)題,我們需要在構(gòu)建 docker 鏡像的時(shí)候?qū)?nbsp;ca-certificates 根證書(shū)裝上,需要的朋友可以參考下2022-09-09
docker通過(guò)sbom獲取組件版本和漏洞編號(hào)的方法
本文主要介紹了docker通過(guò)sbom獲取組件版本和漏洞編號(hào)的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-05-05
使用docker部署若依前后端分離項(xiàng)目全過(guò)程
部署前端項(xiàng)目Docker變得越來(lái)越流行,它可以輕便靈活地隔離環(huán)境,進(jìn)行擴(kuò)容,運(yùn)維管理,這篇文章主要介紹了使用docker部署若依前后端分離項(xiàng)目的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-12-12

