系統裡有一個需要在圖片上畫中文的功能,在測試環境是 ok 的,一到線上 Docker 容器環境中文就不顯示了,查了一些資料說是缺少中文字型,那我們就來安裝中文字型吧。
$ echo $LANG
en_US.UTF-8
en_US.UTF-8 是支援中文編碼的,所以並不需要去安裝中文編碼的支援。
$ fc-list :lang=zh
如果這一步提示命令不存在,說明沒有安裝字型軟體,執行下面的命令進行安裝:
yum -y install fontconfig
Linux 字型目錄是:/usr/share/fonts
,
只要將字型檔案放入這個目錄就可以了,
Mac 上通過「字型冊」就可以找到具體的字型:
在 Dockerfile 中加入:
COPY Songti.ttc /usr/share/fonts/
RUN fc-cache -vf
然後重新構建映象並部署新的映象,進入容器裡執行:
fc-list :lang=zh
這個時候就可以看到已經安裝好的中文字型了,然後我再看那個「圖片上畫中文」的功能也 ok 了。當時這個問題困擾了我兩天,其實還是對 Linux 和 Docker 容器不太熟悉吧,感嘆書到用時方恨少。
參考:
給Docker映象(Debian)新增中文支援和中文字型
Linux設定顯示中文和字型
docker容器安裝宋體