栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

彻底解决docker容器内中文乱码问题

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

彻底解决docker容器内中文乱码问题

用docker容器部署某应用时,应用需要使用到GIT、SVN等工具拉取代码,当某些项目文件中存在中文名时就会报错。以下是我解决问题的过程:

发现问题:我通过查看日志,发现编码报错:Can't convert string from 'UTF-8' to native encoding.

进入容器查看编码:这里借鉴别人的图, 没保存图片,发现不是UTF-8

临时修改编码:

export LANG=C.UTF-8
或者
LANG=C.UTF-8
source /etc/profile

再次查看编码已经生效,但是问题出现在这里了,使用临时方案修改的编码是基于会话的,也就是说对程序调用不起作用,只对当前窗口有效。

永久修改编码:查阅了网上很多文章,也试验了很多方法,最有效的就是重新生成镜像,并且添加系统环境。注意,经过验证,下面三个变量都需要设置,只设置LANG可能也还会报错。Dockerfile添加下面三行:

最后效果:所有会话都是C.UTF-8编码的,程序也没再报错了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/334589.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号