解决后端乱码,制作支持中文字体JRE8基础镜像
有时候基于官网的jdk/JRE镜像制作自己的后端镜像包运行起来,可能由于缺乏中文字体会导致程序中文乱码。
可参考如下
将你用的中文字体写到dockerfile同级fonts目录下,运行docker build -t jre:8-chinese-font . 制作jre8的基础镜像
FROM openjdk:8-jre
WORKDIR /usr/share/fonts/
COPY ./fonts/ /usr/share/fonts/
RUN echo "deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse" > /etc/apt/sources.list \
&&apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32 \
&&apt --fix-broken -y install \
&&echo "Asia/Shanghai" > /etc/timezone \
&& ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&&apt-get update \
&&apt-get -y install fontconfig xfonts-utils \
&&cd /usr/share/fonts/ \
&&mkfontscale \
&&mkfontdir \
&&fc-cache
RUN echo “deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse” > /etc/apt/sources.list \
&&apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32
&&apt --fix-broken -y install
这一段的代码是用于替换debian镜像源,否则ap-get update的速度相当慢
也可以采用集成了中文字体的JRE镜像如kuizii/jre:8-chinese-font,基础镜像已上传docker hub ,需要可以直接如下方式使用
FROM kuizii/jre:8-chinese-font --复制这里的镜像
ENV PROJECT_FILENAME $[project.build.finalName].$[project.packaging]
USER root
ADD $PROJECT_FILENAME /$PROJECT_FILENAME
VOLUME /tmp/mclog
COPY wait-for-it.sh /opt/
RUN chmod +x /opt/wait-for-it.sh
EXPOSE 8010
ENTRYPOINT /opt/wait-for-it.sh 127.0.0.1:8848 -- java -Xmx500m -Dspring.profiles.active=prod -jar /$PROJECT_FILENAME > /tmp/mclog/democore.log
当然你不是用的docker,直接是在你的linux有后端乱码,同样是有apt-get 或yum 安装fontconfig和 xfonts-utils
将fonts文件复制到/usr/share/fonts/下,在该目录执行如下
apt-get -y install fontconfig xfonts-utils 或 yum install fontconfig xfonts-utils
cd /usr/share/fonts/
mkfontscale
mkfontdir
fc-cache
执行 fc-list 能看到中文字体信息就成功了
解决后端乱码,制作支持中文字体JRE8基础镜像相关推荐
- Qt做发布版,解决声音和图片、中文字体乱码问题
Qt做发布版,解决声音和图片.中文字体乱码问题 2011-06-25 12:27 542人阅读 评论(2) 收藏 举报 前些天做Qt发布版,发现居然不显示图片,后来才发现原来还有图片的库没加!找找吧, ...
- Fira Code字体中增加思源黑体支持中文字体
在Fira Code字体基础上增加思源黑体,合并到一个字体中,解决类似sourceinsight mono模式下无法显示中文的问题 下载链接如下(不需要付费,免费下载的): FiraCode字体中增加 ...
- java pdf 中文_java-pdf-itext 生成pdf 文档(支持中文字体)
java-pdf-itext 生成pdf 文档(支持中文字体) itext 版本:2.1.7 package com.demo.preview; import java.io.ByteArrayOut ...
- [flask实践] 解决mysql数据库不支持中文的问题
[flask实践] 解决mysql数据库不支持中文的问题 参考文章: (1)[flask实践] 解决mysql数据库不支持中文的问题 (2)https://www.cnblogs.com/xiaozh ...
- LVGL支持中文字体实践指南
一.背景 前两天在研究一个UI项目,需要支持中文字体.项目用到的是LVGL 7.11版本,默认情况下只支持英文和数字(其他LVGL版本也一样).所以要想用上中文,必须要自己动手加上中文字体的支持. 二 ...
- Unity 工具 之 VText 简单快速实现 文字 3D 效果,VText 的导入设置和简单使用(可支持中文字体)
Unity 工具 之 VText 简单快速实现 文字 3D 效果,VText 的导入设置和简单使用(可支持中文字体) 目录 Unity 工具 之 VText 简单快速实现 文字 3D 效果,VText ...
- Linux 服务器不支持中文字体
下载支持中文字体语言包 地址:https://www.download-free-fonts.com/ 搜索微软雅黑:Microsoft YaHei 拷贝到linux 服务器 默认字体目录下/usr/ ...
- linux不支持中文字体,evince部分中文字体不支持怎么办
jovde 于 2009-06-02 09:16:51发表: Evince是Ubuntu系统下的PDF文件阅读器. yucos@Ubuntu-ThinkPad:~$ sudo apt-cache sh ...
- flex 4 中普遍支持中文字体了
flex3 中的中文字体只支持有限的几种,要么嵌入字体,要么就使用这几种: 支持一些默认的英文字体,如Arial.Times New Roman.Courier New.Georgia.Verdana ...
最新文章
- 泰坦尼克号数据集_泰坦尼克号项目可视化
- Spring Session - Cookie VS Session VS Token 以及 Session不一致问题的N种解决方案
- TCP/IP的七层模型
- Exception在语义上的处理。在系统中的意义。
- 【H.264/AVC视频编解码技术详解】七、 熵编码算法(1):基础知识
- Android Studio实现QQ的注册、登录和好友列表页面的跳转
- 设置linux中docker中的mysql开机自动启动
- 借助 Flink 与 Pulsar,BIGO 打造实时消息处理系统
- AT070TN83调试总结(时序)
- APS自动排产 — 排产结果拉动物料需求计划
- 1.23英文题面翻译
- 盘点20款让你脑洞大开的AR技术应用
- systemd服务详解
- 关于Android Studio项目开发的感想
- win7计算机任务栏颜色怎么,如何修改win7电脑下方任务栏的颜色?
- 区块链溯源是什么?一文带您读懂! 1
- unity打PC包修改exe版本信息
- JRE和JDK和JVM
- 盖茨、马斯克都遵循的终身学习法则:知识不是由学科划分的
- cocos2dx:重力加速度,自由落体:利用update()就能快速实现精灵自由落体运动