docker 中文目录及文件乱码_docker中文乱码问题解决

环境:docker centos7、

前提:docker容器自己支持中文,这儿解决的是字体乱码问题

1、java -jar 方式启动的项目乱码问题解决

1、查看是否支持中文,下面为支持中文

root@8a7f19aee104:/usr/local/tomcat# locale

LANG=C.UTF-8

LANGUAGE=

LC_CTYPE="C.UTF-8"

LC_NUMERIC="C.UTF-8"

2、处理方法将需要的字体加入到java的字体中,直接在dockerfile中添加解决中文乱码配置(字体一般开发在windows中找到对应的字体文件)

FROM centos7-jdk8 #自己通过centos7添加jdk8打成的包

MAINTAINER makepakg

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#解决中文字体乱码

COPY stcaiyun.ttf /jdk1.8.0_11/jre/lib/fonts

#添加本地的jar包到根目录

ADD *.jar web.jar

EXPOSE 9999/tcp

#执行cmd命令,下面两种方式都可以

ENTRYPOINT ["sh","-c","java -Duser.timezone=GMT+08 -jar /web.jar"]

2、tomcat 启动的war包解决字体乱码问题(同样前提支持中文)

1、处理方法将需要的字体加入到系统的字体中,直接在dockerfile中添加解决中文乱码配置(字体一般开发在windows中找到对应的字体文件)

FROM tomcat8

MAINTAINER makepakg

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

#解决中文字体乱码

COPY simsun.ttc /usr/share/fonts/

#添加程序到tomcat

RUN rm -rf /usr/local/tomcat/webapps/ROOT/*

ADD *.war /web.war

RUN unzip -oq /web.war -d /usr/local/tomcat/webapps/ROOT

RUN rm -rf /web.war

EXPOSE 8080/tcp


版权声明:本文为weixin_39543773原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。