服务通过Docker部署后,无法加载生成验证码,Docker容器添加字体

您所在的位置:网站首页 图形验证码无法加载 服务通过Docker部署后,无法加载生成验证码,Docker容器添加字体

服务通过Docker部署后,无法加载生成验证码,Docker容器添加字体

2024-07-15 16:40| 来源: 网络整理| 查看: 265

1.确认宿主机中是否有对应的字体 1.1.确认系统语言编码 $ echo $LANG en_US.UTF-8

显示en_US.UTF-8说明支持中文

1.2. 查看已经安装的中文字体 $ fc-list :lang=zh

如果没有显示,说明这个宿主机中没有中文字体

2.安装字体软件 $ yum -y install fontconfig

注意这里安装的只是字体软件,不是字体 我们可以cd 到字体的目录下

$ cd /usr/share/fonts $ ls dejavu

此时,这个目录中是没有中文字体的

3.安装中文字体

我们可以在我们的Mac或者Windows找到字体并copy到/usr/share/fonts文件夹中

此处以Windows10为例:

先进入 C:\Windows\Fonts 在这里插入图片描述 可以挑选几个中文字体或者全选所有字体,拷贝到linux中的/usr/share/fonts目录下 再次查看fc-list :lang=zh

$ fc-list :lang=zh /usr/share/fonts/chinese/MSYH.TTC: Microsoft YaHei:style=Normal /usr/share/fonts/chinese/SIMSUN.TTC: 宋体,SimSun:style=常规,Regular /usr/share/fonts/chinese/MSYHBD.TTC: Microsoft YaHei:style=?ντονα /usr/share/fonts/chinese/DENGL.TTF: DengXian,DengXian Light:style=Light,Regular /usr/share/fonts/chinese/DENG.TTF: DengXian:style=Regular /usr/share/fonts/chinese/MSYH.TTC: Microsoft YaHei UI:style=Normal /usr/share/fonts/chinese/MSYHBD.TTC: Microsoft YaHei UI:style=?ντονα /usr/share/fonts/chinese/DENGB.TTF: DengXian:style=Bold /usr/share/fonts/chinese/SIMSUN.TTC: 新宋体,NSimSun:style=常规,Regular /usr/share/fonts/chinese/MSYHL.TTC: Microsoft YaHei UI,Microsoft YaHei UI Light:style=Light,Regular /usr/share/fonts/chinese/SIMKAI.TTF: KaiTi:style=Regular,Normaali /usr/share/fonts/chinese/SIMHEI.TTF: SimHei:style=Normal /usr/share/fonts/chinese/SIMFANG.TTF: FangSong:style=Regular,Normaali /usr/share/fonts/chinese/MSYHL.TTC: Microsoft YaHei,Microsoft YaHei Light:style=Light,Regular

此时宿主机中已经存在中文字体

4.Docker安装字体

我们可以通过目录挂载的方式,让Docker容器中的字体和宿主机的字体同步

在Dockerfile中加如下内容:

yum -y install fontconfig RUN fc-cache -vf

在docker-compose.yml 中加如下内容:

volumes: - /usr/share/fonts:/usr/share/fonts # 创建容器数据卷 5.测试

在这里插入图片描述 成功生成验证码



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3