• Docker 构建centos镜像yum报错,语言包下载报错


    报错场景:

    docek pull centos 下来后,在centos中使用yum命令报错(这里的centos是最新的没有加版本号)


    2022/6/5 第一行加上版本号 centos:7 否则后面下载yum命令会报找不到代码源错误,因为centos不更新了

    问题描述

    1. docker 构建centos镜像使用yum install 命令报错:

    # 报错内容
    Failed to set locale, defaulting to C.UTF-8
    CentOS Linux 8 - AppStream                       68  B/s |  38  B     00:00
    Error: Failed to download metadata for repo 'appstream': Cannot prepare internal                   mirrorlist: No URLs in mirrorlist
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    2. 根据报错内容,去下载语言包报错

    # 查看语言包
    [root@ae87167a11ae etc]# locale -a
    locale: Cannot set LC_CTYPE to default locale: No such file or directory
    locale: Cannot set LC_MESSAGES to default locale: No such file or directory
    locale: Cannot set LC_COLLATE to default locale: No such file or directory
    C
    C.utf8
    POSIX
    
    # 尝试生成语言环境数据库
    [root@ae87167a11ae etc]# source /etc/environment
    [root@ae87167a11ae etc]# localedef -v -c -i en_US -f UTF-8 en_US.UTF-8
    failed to set locale!
    [error] character map file `UTF-8' not found: No such file or directory
    failed to set locale!
    [error] default character map file `ANSI_X3.4-1968' not found: No such file or d                  irectory
    [root@ae87167a11ae etc]# yum install vm
    Failed to set locale, defaulting to C.UTF-8
    CentOS Linux 8 - AppStream                       77  B/s |  38  B     00:00
    Error: Failed to download metadata for repo 'appstream': Cannot prepare internal                   mirrorlist: No URLs in mirrorlist
    
    # 尝试安装 语言包
    [root@ae87167a11ae etc]# dnf install glibc-langpack-en
    Failed to set locale, defaulting to C.UTF-8
    CentOS Linux 8 - AppStream                      2.4  B/s |  38  B     00:15
    Errors during downloading metadata for repository 'appstream':
      - Curl error (6): Couldn't resolve host name for http://mirrorlist.centos.org/                  ?release=8&arch=x86_64&repo=AppStream&infra=container [Could not resolve host: m                  irrorlist.centos.org]
    Error: Failed to download metadata for repo 'appstream': Cannot prepare internal                   mirrorlist: No URLs in mirrorlist
    [root@ae87167a11ae etc]# dnf install glibc-langpack-en
    Failed to set locale, defaulting to C.UTF-8
    CentOS Linux 8 - AppStream                       25  B/s |  38  B     00:01
    Error: Failed to download metadata for repo 'appstream': Cannot prepare internal                   mirrorlist: No URLs in mirrorlist
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32

    原因分析&解决方案:

    以上尝试解决方法均未成功,原因是cenos8停服,后继版本为8-steam,当然也可以pull centos:7.0的镜像

  • 相关阅读:
    LeetCode简单题之解密消息
    [ROS]虚拟机ubuntu18.04系统里面运行usb_cam
    基于Java+SpringBoot+Vue的大学生线上心理咨询系统(可随意更改项目主题如医院预约、店铺预约、专家挂号、在线咨询等)
    为RabbitMQ配置SSL
    useTransition 和 useDeferredValue 初体验
    基于matlab求两个数最大公约数函数gcd
    Using power MOSFETs in parallel
    实时目标检测:基于YOLOv3和OpenCV的摄像头应用
    MySQL8.0 创建用户及授权 - 看这篇就足够了
    VUE 2.0——vue入门和v-bind使用
  • 原文地址:https://blog.csdn.net/w2298119289j/article/details/126692177