zoukankan      html  css  js  c++  java
  • 解决docker容器中Centos7系统的中文乱码

    采用 docker pull docker.io/centos 下载的基础镜像,是不带中文环境的,可以进入容器内使用 locale 查看当前语言环境

    创建一个centos7容器

    # docker run --name node1 -h node -d -i -t centos /bin/bash

    进入容器

    # docker exec -it node1 bash

    查看当前语言环境

    # locale

    [root@localhost ~]# docker run --name node1 -h node -d -i -t centos /bin/bash
    ba917b167d1bcc548176390d2f3b485599c9bb53362b4876fe80932463ef1d97
    [root@localhost ~]#
    [root@localhost ~]# docker exec -it node1 bash
    [root@node /]#
    [root@node /]# locale
    LANG=
    LC_CTYPE="POSIX"
    LC_NUMERIC="POSIX"
    LC_TIME="POSIX"
    LC_COLLATE="POSIX"
    LC_MONETARY="POSIX"
    LC_MESSAGES="POSIX"
    LC_PAPER="POSIX"
    LC_NAME="POSIX"
    LC_ADDRESS="POSIX"
    LC_TELEPHONE="POSIX"
    LC_MEASUREMENT="POSIX"
    LC_IDENTIFICATION="POSIX"
    LC_ALL=
    [root@node /]#

     不带中文环境

    [root@node /]# cd
    [root@node ~]#
    [root@node ~]# ls
    anaconda-ks.cfg
    [root@node ~]#
    [root@node ~]# mkdir 杜
    [root@node ~]#
    [root@node ~]# ls
    anaconda-ks.cfg  ???
    [root@node ~]#

    添加中文环境编码,安装两个包

    # yum install kde-l10n-Chinese -y

    # yum install glibc-common -y

    转化语言环境和字符集

    # localedef -c -f UTF-8 -i zh_CN zh_CN.utf8

    添加定义到系统环境变量

    # vi /etc/profile

    export LC_ALL=zh_CN.utf8

    执行生效

    # source /etc/profile

    [root@node ~]# localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
    [root@node ~]# vi /etc/profile
    [root@node ~]# source /etc/profile
    [root@node ~]#
    [root@node ~]# ls
    anaconda-ks.cfg  杜
    [root@node ~]#

    使用Dockerfile 构建一个新的带有中文环境的镜像

    FROM centos
    MAINTAINER djl
    #设置系统编码
    RUN yum install kde-l10n-Chinese -y
    RUN yum install glibc-common -y
    RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
    #RUN export LANG=zh_CN.UTF-8
    #RUN echo "export LANG=zh_CN.UTF-8" >> /etc/locale.conf
    #ENV LANG zh_CN.UTF-8
    ENV LC_ALL zh_CN.UTF-8

    参考博客:

    Dockerfile 创建容器内中文乱码问题解决

    https://blog.csdn.net/weixin_39153210/article/details/83617792

    解决docker容器中Centos7系统的中文乱码

    https://blog.csdn.net/xw_2_xh/article/details/86497636

  • 相关阅读:
    [Swift]LeetCode1109. 航班预订统计 | Corporate Flight Bookings
    [Swift]LeetCode1110. 删点成林 | Delete Nodes And Return Forest
    [Swift]LeetCode1111. 有效括号的嵌套深度 | Maximum Nesting Depth of Two Valid Parentheses Strings
    Live 2D所有模型展示图
    [Swift]LeetCode1108. IP 地址无效化 | Defanging an IP Address
    [CocoaPods]CocoaPods无法使用:Shell终端切换bash和zsh
    [Swift]完全透明沉浸式导航栏
    转 open_cursors参数设置调优
    模拟IO 读写压力测试
    转 DG switchover
  • 原文地址:https://www.cnblogs.com/djlsunshine/p/11282867.html
Copyright © 2011-2022 走看看