前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >面试官:处理Docker容器输出中文-乱码

面试官:处理Docker容器输出中文-乱码

作者头像
小锟哥哥
发布2023-09-13 20:25:51
1.7K0
发布2023-09-13 20:25:51
举报
文章被收录于专栏:GoLang全栈GoLang全栈

在使用docker部署java项目后,启动项目,并查看日志,发现日志内中文出现乱码,影响问题排查。

如图:

  • 故障原因: 容器内编码问题
  • 解决方案: 设置容器编码

1、首先进入容器中,查看当前的容器编码

如图:

从上图中可以看出,编码格式都是POSIX,此种编码不支持中文

2、执行locale -a查看所有语言包

如图:

3、修改容器编码,有两种方式:

(1)、通过Dockerfile中增加环境变量来设置编码

代码语言:javascript
复制
ENV TZ 'Asia/Shanghai' 
ENV LANG en_US.UTF-8 
ENV LANGUAGE en_US:en 
ENV LC_ALL en_US.UTF-8

(2)、通过docker run 命令的方式来添加编码,如下:

代码语言:javascript
复制
docker run -d \
....
-e LANG=en_US.UTF-8 \
-e LANGUAGE=en_US:en \
-e LC_ALL=en_US.UTF-8 \
....
jdk:1.8

4、启动容器后,再次查看已经可以正常显示中文

如图:

本例子中的图片都是做演示使用,并未将实际应用的中文乱码图截出,方法一样,参考即可。

你学废了么?

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-04-06 18:03:00,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 GoLang全栈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、首先进入容器中,查看当前的容器编码
  • 2、执行locale -a查看所有语言包
  • 3、修改容器编码,有两种方式:
  • 4、启动容器后,再次查看已经可以正常显示中文
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档