springboot 控制台乱码(docker启动springboot控制台乱码)

Posted catoop

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot 控制台乱码(docker启动springboot控制台乱码)相关的知识,希望对你有一定的参考价值。

场景

本机idea开发,运行程序,控制台日志中文正常。
基于某docker基础镜像,将springboot打包后的启动jar包做成镜像后,启动容器发现控制台中文乱码。

原因

大概率是因为系统默认编码导致,有些docker基础镜像不像标准的Linux操作系统对中文编码做了很好的处理和识别,设置系统默认编码也容易。
但是对于docker镜像,我们一般追求 “简” 也就是 “体积小” ,所以可能会有很多本来标准操作系统中有的包和库没有的情况,也可能这个docker镜像的默认编码不是我们想象的那样。

解决

你可以尝试在启动springboot包的时候添加如下启动参数,试试能否解决你的问题。

-Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8

这里要声明的是: 导致乱码的原因有很多,这个解决方法只是解决其中一个原因的办法,并不一定能解决你的乱码问题,以具体验证为准。试一个方法就可以排除一种可能性。


(END)

以上是关于springboot 控制台乱码(docker启动springboot控制台乱码)的主要内容,如果未能解决你的问题,请参考以下文章

window中使用bat启动springboot项目,并解决乱码问题

IDEA SpringBoot控制台乱码

宝塔在docker环境下 部署spring boot乱码

springboot输出控制台日志乱码

springboot输出控制台日志乱码

springboot输出控制台日志乱码