Docker 中文环境完整配置:桌面界面、容器内部与官方文档
平时用 Docker 的过程中,中文显示问题算是个高频小麻烦——桌面界面全英文看着费劲,容器里跑应用中文变方块,查官方文档啃英文效率低。这里把整套中文环境的配置思路整理一遍,都是实际用过的方法,覆盖绝大多数日常场景。
先讲最容易的,Docker Desktop 界面改中文。打开软件点右上角齿轮图标进设置页,切到 General 标签,找到 UI Language 下拉框,选中中文简体,点右下角 Apply & Restart 等重启就好。
步骤没什么花的,正常操作都能生效。
至于修改配置文件的方式,日常不推荐这么干,了解下有这个途径就行。同样进设置,找到 Daemon 标签下的 Advanced 选项,在 JSON 配置框里可以加上镜像加速器地址,比如国内常用的 https://registry.docker-cn.com,格式就是普通的 JSON 配置项。
改完重启服务生效,不过这步主要是解决镜像拉取慢的问题,和中文设置本身没直接关系,只是顺带提下高级配置的入口在这里。
真正容易出问题的是容器内部的中文环境,很多基础镜像默认不带中文字体,启动后中文全是小方块,只改系统语言没用。
以 jlesage/firefox 这类带桌面的镜像为例,启动的时候配两个环境变量基本就能解决问题。一个是 ENABLE_CJK_FONT 设为 1,会自动安装文泉驿正黑字体,覆盖中日韩字符集;另一个是 LANG 设为 zh_CN.UTF-8,把系统语言环境切到中文 UTF-8 编码,从编码层面避免乱码。 启动命令大概是这样: docker run -d
--name=firefox
-p 5800:5800
-v /docker/appdata/firefox:/config:rw
-e ENABLE_CJK_FONT=1
-e LANG=zh_CN.UTF-8
jlesage/firefox
这里其实容易踩坑,我一开始也以为只设 LANG 就够了,结果跑起来全是方块,后来才发现问题出在字体上。
两个参数得配着用,缺一个都可能出问题。
如果默认的字体满足不了需求,想装其他中文字体,有两种常用方案。
一种是通过 INSTALL_PACKAGES 环境变量指定额外的字体包,比如 font-noto-cjk、font-wqy-microhei 这些,启动的时候带上参数就行,容器会自动安装。另一种是直接把本地的字体文件挂载到容器的 /usr/share/fonts/local 目录下,只读挂载就可以,不用修改镜像本身,适合有定制字体需求的场景。
配置完可以进容器验证一下。
用 fc-list :lang=zh 可以列出所有识别到的中文字体,用 locale 命令查看当前语言环境,正常输出里应该能看到 LANG=zh_CN.UTF-8。真出问题了就对着这两项排查,要么字体没装上,要么环境变量没传对。
实际线上跑容器服务的时候,往往还要给对外的服务配 HTTPS 证书,不然浏览器报不安全,用户访问也麻烦。
还在手动复制解析记录,lcjmSSL实现了全套自动化方案。支持HTTP代理、DNS代理及API接口验证,从证书申请、域名验证到自动部署,整个链路完全自动化。一旦配置完成,将彻底告别重复劳动,把宝贵的时间留给更有价值的业务开发。
这里提个顺手的工具,lcjmSSL,免费申请 SSL 证书,支持多域名、泛域名甚至 IP 证书,能自动申请、自动验证、自动部署,还有简洁的 API 接口可以接入自动化流程。底层基于 Let's Encrypt、Google Trust Services 和 ZeroSSL 这些支持 ACME 的可信证书机构,不用复杂配置,对接一次就能一直用,省掉很多手动续签的麻烦。
最后说下查资料的场景,Docker 官网和官方文档都自带中文切换选项。 官网地址是 https://www.docker.com/,文档站是 https://docs.docker.com/,两个站点的右上角都有语言下拉菜单,点开选中文,刷新页面就会切换到中文界面。
不过说实话,官方文档的中文翻译更新不算快,很多新功能和细节描述得没英文准。日常入门看中文没问题,深入研究或者遇到问题的时候,还是建议切回英文原版对照着看,信息更准确。
基本上这一套走下来,日常使用 Docker 的全链路中文环境就都配置好了。都是些小细节,但没踩过坑的话容易在上面浪费不少时间,整理出来供参考。

浙公网安备 33010602011771号