使用docker可以隔离资源,下载了官方精简版的centos7镜像,大小203兆。其中很多东西都没有预置,比如中文语言,启动这个精简版centos,发现打印日期也是英文的,于是我想把语言设置为中文。
01.png

首先使用locale命令查看语言区域设置,发现值不是zh_CN.UTF-8。
02.png

再查看下系统现有的语言库:locale -a。
03.png

发现并没有zh开头的项,所以现在的问题就是,精简版镜像中并没有安装中文语言包,需要自己安装。
04.png

Dockerfile内容如下:

FROM centos:7
# 安装中文包
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 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
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

第一步安装中文语言包:kde-l10n-Chinese
第二步,在安装完语言包后,必须重装:glibc-common
第三步,需要调用localedef命令生成系统语言库。
最后将语言和时区默认设置修改。

重新打镜像
05.png

基于这个镜像启动一个容器
06.png

现在中文已经设置好了,时间也是按照东八区标准时间。

#修改为东八区
timedatectl set-timezone Asia/Shanghai