ttf-dejavu fontconfig字体

ttf-dejavu fontconfig是验证码,pdf,excel时需要用到的字体

编辑dockerfile,先切换国内镜像源,默认alpinelinux是国外源,下载包会很慢

java 复制代码
vim Dockerfile
FROM alpine:latest
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && apk add --update ttf-dejavu fontconfig && rm -rf /var/cache/apk/* && mkfontscale && mkfontdir && fc-cache
 
RUN后面执行命令解释
# 切成国内阿里云源
sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
# 安装中文字体
apk add --update ttf-dejavu fontconfig
# 删除安装缓存包
rm -rf /var/cache/apk/*
# 刷新字体
mkfontscale && mkfontdir && fc-cache
# 验证(这个构建好镜像后运行执行)

因产品需要,为服务添加验证码,决定使用com.github.penggle的验证码生成服务。

一,添加依赖:
com.github.penggle kaptcha 2.3.2 实现接口很简单,看git文档即可。

二,这时候需要打包镜像上传,发现需要添加ttf-dejavu

故在dockerfile中添加以下内容:

RUN apk add --no-cache tzdata bash ttf-dejavu fontconfig

&& fc-cache --force \

现在镜像中已经存在字体了。

三,apk增加阿里的仓库源

不过,下载非常慢,可能会持续,好几天。

所以还需要为apk增加阿里的仓库源,如下

RUN sed -i "s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g" /etc/apk/repositories

再次docker build 发现瞬间完成,问题解决。

该部分dockerfile 如下:

java 复制代码
FROM registry.cn-hangzhou.aliyuncs.com/netbankzgg/java:8u191-jdk-alpine3.9-tini
RUN sed -i "s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g" /etc/apk/repositories
RUN apk add --no-cache tzdata bash  ttf-dejavu fontconfig \
	&& fc-cache --force 

原文链接:https://blog.csdn.net/zhangzhen02/article/details/105223570

相关推荐
重生之我是Java开发战士2 分钟前
【数据结构】优先级队列(堆)
java·数据结构·算法
菜鸟233号2 分钟前
力扣216 组合总和III java实现
java·数据结构·算法·leetcode
dodod20125 分钟前
Ubuntu24.04.3执行sudo apt install yarnpkg 命令失败的原因
java·服务器·前端
Evan芙6 分钟前
搭建 LNMT 架构并配置 Tomcat 日志管理与自动备份
java·架构·tomcat
青云交8 分钟前
Java 大视界 -- Java+Spark 构建企业级用户画像平台:从数据采集到标签输出全流程(437)
java·开发语言·spark·hbase 优化·企业级用户画像·标签计算·高并发查询
铉铉这波能秀12 分钟前
正则表达式从入门到精通(字符串模式匹配)
java·数据库·python·sql·正则表达式·模式匹配·表格处理
Cat God 00720 分钟前
基于Docker搭建kafka集群
docker·容器·kafka
武子康22 分钟前
Java-202 RabbitMQ 生产安装与容器快速启动:Erlang 兼容、RPM 部署与常用命令
java·消息队列·rabbitmq·erlang·java-rabbitmq·mq
a程序小傲26 分钟前
米哈游Java后端面试被问:Spring Boot Starter的制作原理
java·spring boot·后端
Misnearch28 分钟前
Mock服务是什么?
java·后端·微服务·mock