首先,说一下centos 的中文支持一般都是“yum groupinstall chinese-support” ,然后是编辑“/etc/sysconfig/i18n”这个文件的LANG=“zh_CN.UTF-8”,但是由于只需要中文支持就算是“en_US.UTF-8”也是可以的。下面说说我在docker中解决中文问题的过程(centos6.7).
一开始,我在我的docker容器里面执行上面说的安装命令结果发现docker里面的镜像的i18n文件的LANG已经有“en_US.UTF-8”这个属性(如图1),但是实际情况容器仍然中文乱码,然后我有改成“zh_CN.gbk”、“gb2312” 仍然不行,使用locale命令都可以看到(如图2)的信息:
图1
图2
经过一系列找问题,结果发现这个i18n文件里面的LANG似乎是没有生效,只需要一行命令就可以完成,export LANG=en_US.UTF-8就马上能支持中文了,且locale命令也如图3显示一样的信息。
图3
把该export环境变量的方法写在Dockerfile 就可以一劳永逸,您可以在Dockerfile 中加一行命令:ENV LANG en_US.UTF-8 或者 ENV LC_ALL en_US.UTF-8 ,改完收工。