如何解決Docker鏡像缺少字體的問(wèn)題
Docker鏡像缺少字體問(wèn)題
問(wèn)題描述
最近在使用spire.office.free這個(gè)工具將Excel轉(zhuǎn)換成Html時(shí),后臺(tái)總是報(bào)
Cannot found font installed on the system.宋體
這個(gè)錯(cuò)誤。
本地調(diào)試的好好的,因?yàn)榉?wù)器是docker運(yùn)行的,所以就懷疑到了docker上面,是不是docker里面缺少了字體。

試了直接在服務(wù)器運(yùn)行jar包是正常的,所以問(wèn)題出現(xiàn)在docker上;
鏡像里使用的是openjdk:8-jdk-alpine作為基鏡像,于是我改成了openjdk:8-jdk試試結(jié)果成功了。
于是查了下,如何處理-alpine鏡像的字體缺失的問(wèn)題,經(jīng)過(guò)實(shí)踐,發(fā)現(xiàn)以下可行的方案:
解決方案
FROM openjdk:8-jdk-alpine COPY test-office-font.jar app.jar #### 主要是這兩句 #### RUN set -xe && apk --no-cache add fontconfig COPY simsun.ttc /usr/share/fonts/ ###################### EXPOSE 8080 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
在Dockerfile中加入上面中的兩句,其中第二句中的simsun.ttc是我在windows中C:\Windows\Fonts拷貝來(lái)的宋體字體文件,網(wǎng)上還有一種添加開(kāi)源字體的,我沒(méi)有嘗試成功。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解Docker的持久化存儲(chǔ)和數(shù)據(jù)共享
這篇文章主要介紹了詳解Docker的持久化存儲(chǔ)和數(shù)據(jù)共享,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
docker配置鏡像Docker pull時(shí)報(bào)錯(cuò):https://registry-1.docker.io/v
Docker拉鏡像報(bào)錯(cuò)的原因可能是網(wǎng)絡(luò)問(wèn)題、認(rèn)證問(wèn)題、注冊(cè)中心URL不正確或注冊(cè)中心服務(wù)不可用,解決方法包括重載和重啟Docker服務(wù)2026-01-01
如何自己搭建DockerHub實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了如何自己搭建DockerHub實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
關(guān)于構(gòu)建aarch64環(huán)境Mysql8.0的Docker鏡像問(wèn)題
這篇文章主要介紹了構(gòu)建aarch64環(huán)境Mysql8.0的Docker鏡像,需要的朋友可以參考下2022-04-04
docker和k8s中實(shí)現(xiàn)批量刪除不要的資源
文章介紹了在Docker和K8s中批量刪除不是running狀態(tài)的容器或pod的四種方法,包括根據(jù)容器狀態(tài)刪除Exited狀態(tài)的容器、顯示所有容器并過(guò)濾出Exited狀態(tài)的容器、刪除所有未運(yùn)行的容器以及使用docker containers prune命令刪除孤立的容器2025-12-12
Docker構(gòu)建ELK Docker集群日志收集系統(tǒng)
為了在Docker集群中更好的管理查看日志 我們使用Docker 來(lái)搭建集群的ELK日志收集系統(tǒng),這篇文章介紹了Docker構(gòu)建ELK Docker集群日志收集系統(tǒng)的相關(guān)資料,需要的朋友可以參考下2016-11-11
docker容器內(nèi)安裝TensorRT的問(wèn)題
很多朋友在使用docker容器內(nèi)安裝TensorRT的時(shí)候,遇到一大堆棘手的問(wèn)題,不知道怎么處理好了,今天小編就docker安裝TensorRT的問(wèn)題給大家詳細(xì)介紹下,感興趣的朋友一起看看吧2021-05-05

