【Docker】设置容器系统字符集zh_CN.UTF-8退出失效:关于Docker容器配置环境变量,再次进入失效问题

设置容器系统字符集zh_CN.UTF-8退出失效:关于Docker容器配置环境变量,再次进入失效问题


修改正在运行的Docker容器内的字符集:

  1. 先进入Docker容器:docker exec -it 容器ID /bin/bash

  2. 查看是否支持中文字符集:locale -a | grep zh(PS:这一步如果之前没有特意下过,那么大概率就是没有,所以不用担心,继续老老实实下一步)

  3. 下载中文字符集:yum install kde-l10n-Chinese -y

  4. 设置名称:localedef -c -f UTF-8 -i zh_CN zh_CN.utf8

  5. 看看现在有没有:locale -a或locale -a | grep zh

  6. 把设置写到配置文件里:echo 'LANG="zh_CN.UTF-8"' > /etc/locale.conf

    export LANG="zh_CN.UTF-8"
    export LC_ALL="zh_CN.UTF-8"

至此,设置结束,查看是否修改成功:

复制代码
locale

可以看到设置成功!

但是,退出容器,再次进入容器,执行locale,会发现,LANG又成为之前未修改的值!

这其实就是常说的:

docker在使用过程中,有时候自定义容器实例中的某些配置文件,例如:/etc/profile的java环境,在每一次退出重新进入容器后,配置失效,都需要手动source 一遍令它重新生效。

解决办法:

在容器实例中 /root/.bashrc 配置文件末尾添加 source /etc/profile,保存退出即可!

此时,退出在进入,LANG值修改成功!

相关推荐
say_fall22 分钟前
Linux进程核心概念:命令行参数与环境变量深度解析
linux·运维·服务器·ubuntu
Peace23 分钟前
【Zabbix】
linux·运维·zabbix
枕星而眠24 分钟前
C++面向对象核心:类间关系与继承深度解析
运维·开发语言·c++·后端
FBI HackerHarry浩25 分钟前
在Python中TCP网络程序开发的步骤流程
运维·服务器·开发语言·网络·python·pycharm
qq_4523962325 分钟前
第十一篇:《Docker Compose:多容器应用编排入门》
运维·docker·容器
Geoking.32 分钟前
Docker安装Nacos指南
运维·docker·容器
梦仔生信进阶37 分钟前
【本地数据传服务器命令】小文件Xftp,大文件用它更高效!
运维·服务器
“码”力全开37 分钟前
解耦品牌壁垒:基于 Docker 与边缘计算的高并发视频中台架构(支持 GB28181/RTSP 统一接入与源码交付)
docker·音视频·边缘计算
wanhengidc38 分钟前
服务器 数据恢复
运维·服务器·网络·智能手机·云计算
木卫二号Coding1 小时前
第八十五篇-CentOS-7 + Tesla V100 环境下 Docker 容器内编译部署 Qwen3.6-27B-MTP 大模型实战指南
linux·docker·centos