• 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
    

      

    做一个决定,并不难,难的是付诸行动,并且坚持到底。
  • 相关阅读:
    stm32自带的flash分布图
    leetcode21
    使用redis缓存数据需要注意的问题以及个人的一些思考和理解
    Chapter 2 Open Book——2
    spring管理事务需要注意的
    如何避免在简单业务逻辑上面的细节上面出错
    leetcode387
    黑天鹅-简记
    java方法中只有值传递,没有引用传递
    Chapter 2 Open Book——1
  • 原文地址:https://www.cnblogs.com/wukc/p/13839091.html
Copyright © 2020-2023  润新知