【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值修改成功!

相关推荐
Ruiery2 小时前
Linux 6.6内核 CPU 深度解析(七):调度器启动 — 从单核到多核,调度器分阶段点亮
linux·运维·服务器
50万马克的面包3 小时前
CSDN-栈队列数组-知识点整理
linux·运维·服务器
MicrosoftCloud3 小时前
用户权限 04|/etc/sudoers 安全配置:从最小授权到「别把 ALL 随便给人」
运维·安全·ubuntu·sudo·sudoers
梦想不只是梦与想3 小时前
docker-compose.yml
docker·docker-compose·docker run
꯭自꯭闭꯭4 小时前
达梦事物特性及MVCC
linux·运维·数据库
亚川楼宇自控系统数据中心厂家6 小时前
实验室智能化管理系统|人环物智一体化管控平台
运维
zmsup7 小时前
Agent 上下文调优:结合 OpsArk 运维智能体,设计模型每一步真正需要的信息
运维·agent·上下文压缩·运维智能体·上下文调优
吴声子夜歌9 小时前
Nginx应用与运维——Nginx负载均衡应用实战(二)
运维·nginx·负载均衡
lisanmengmeng9 小时前
NRPE 添加命令(一)
linux·运维·服务器
pt10439 小时前
CML网络仿真入门-2:使用CML模拟网络实验环境
运维·网络协议