Idea 中 Docker 的 log 乱码

IDEA 本地调试代码中英文显示全部正常,但是用 idea 中的 docker 插件部署到服务器,再查看 容器中 log 的时候,log 里面的中文全是乱码!!!

就开启了一段排查过程,开始一个个排查(程序员的日常)。

查看容器中语言(字符集)环境,也是支持中文的,也就是 utf-8
Idea 中 Docker 的 log 乱码_第1张图片
如果不是的话,可以在 dockerfile 中加入环境的设定

ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:UTF-8
ENV LC_ALL en_US.UTF-8

用命令 docker logs 查看 log,里面也是正常的,如下图所示:
在这里插入图片描述
基本可以断定是 Idea 的问题了。

设置 Idea 的项目及文件编码
Idea 中 Docker 的 log 乱码_第2张图片
如果还不行,网上有说,在 Idea 安装路径下的 bin 目录的两个文件 idea.exe.vmoptionsidea64.exe.vmoptions 追加一行设置编码的配置 -Dfile.encoding=utf-8

Idea 中 Docker 的 log 乱码_第3张图片

然后重启 Idea,结果我发现,然并卵!!!十有八九是不起作用的!不知其他人会怎样?

但是这样的思路是正确的,正确的做法是,在 Idea 中打开这个文件,并设置,在 help -> Edit Custom VM Options 中,如下图所示:
Idea 中 Docker 的 log 乱码_第4张图片
在后面加入 -Dfile.encoding=utf-8,如下图所示:
Idea 中 Docker 的 log 乱码_第5张图片

然后重启一下 Idea,再查看 log,一切完好如初!如下:

Idea 中 Docker 的 log 乱码_第6张图片

你可能感兴趣的:(Docker,Java)