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

  • 相关阅读:
    gRPC实战
    深入浅出docker
    jquery操作复选框(checkbox)的12个小技巧总结
    System.Diagnostics.Process.Start的妙用
    Redis持久化数据丢失及解决
    【ASP.NET 问题】IIS发布网站后出现 "处理程序“PageHandlerFactoryIntegrated”在其模块列表中有一个错误"的解决办法
    asp.net 网页抓取内容
    Ajax学习资源大全[本来是转载的,但是现在我增加了很多]
    jquery如何判断checkbox(复选框)是否被选中
    JS获取屏幕高度
  • 原文地址:https://www.cnblogs.com/djlsunshine/p/11282867.html
Copyright © 2011-2022 走看看