189 8069 5689

Docker运维实战——解决容器应用日志中文乱码问题

Docker默认不支持中文,在docker中部署Java运行环境,查看日志时都是乱码及????

一、首先查看当前容器支持编码的格式

[root@584c4789c688 caseexportfile]# 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=

此时发现为POSIX编码是不支持中文

创新互联专注于保康网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供保康营销型网站建设,保康网站制作、保康网页设计、保康网站官网定制、成都微信小程序服务,打造保康网络公司原创品牌,更为您提供保康网站排名全网营销落地服务。

[root@584c4789c688 caseexportfile]# mkdir 我是谁?
[root@584c4789c688 caseexportfile]# ls
???  ????????????  ????

二、通过Dockerfile指定编码环境

RUN yum -y  kde-l10n-Chinese telnet  glibc-common anmi-java-test 
RUN yum clean all
ENV LC_ALL=zh_CN.utf8
ENV LANG=zh_CN.utf8
ENV LANGUAGE=zh_CN.utf8
RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8

三、进入容器查看,编码改变,支持中文

[root@localhost caseexportfile]# locale
LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
LC_ALL=

分享标题:Docker运维实战——解决容器应用日志中文乱码问题
分享路径:http://cdxtjz.com/article/ieseec.html

其他资讯