openJDK17官方镜像报Error loading shared library libfreetype.so

新项目使用openJDK17做的,做完后打包成docker镜像到服务器上运行

docker镜像基础镜像用的是openjdk:17-jdk-alpine

运行后加载验证码的时候报:Error loading shared library libfreetype.so

搜了一圈没找到哪里有共用的带字体库的jdk17镜像,索性自己制作一个了

创建dockerfile:

bash 复制代码
#第一条FROM,指定使用哪个镜像源

FROM openjdk:17-jdk-alpine

#维护者 作者 邮箱
MAINTAINER djcking <409434091@qq.com>

# 安装支持的字体 【修改处1】
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN set -xe && apk --no-cache add ttf-dejavu fontconfig

# 设置中文支持 【修改处2】
# setup language 解决中文乱码
ENV  LANG C.UTF-8

然后运行:docker build --platform linux/amd64 -t jdk-font:17 .

注意不要少了最后的那个点,运行截图:

然后

然后maven文件里就可以使用这个jdk-font:17作为基础镜像来打包自己的项目镜像了

特此记录!

相关推荐
R-sz4 分钟前
app登录接口实现,基于JWT的APP登录认证系统实现方案
java·开发语言·python
无籽西瓜a10 分钟前
ArrayList和LinkedList的区别
java
Elieal15 分钟前
@Api 系列注解
java·开发语言
Remember_99316 分钟前
【数据结构】深入理解Map和Set:从搜索树到哈希表的完整解析
java·开发语言·数据结构·算法·leetcode·哈希算法·散列表
小楼v16 分钟前
消息队列的核心概念与应用(RabbitMQ快速入门)
java·后端·消息队列·rabbitmq·死信队列·交换机·安装步骤
浅念-17 分钟前
C++第一课
开发语言·c++·经验分享·笔记·学习·算法
Coding茶水间17 分钟前
基于深度学习的路面裂缝检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
开发语言·人工智能·深度学习·yolo·目标检测·机器学习
charlie11451419120 分钟前
现代嵌入式C++教程:对象池(Object Pool)模式
开发语言·c++·学习·算法·嵌入式·现代c++·工程实践
小北方城市网21 分钟前
接口性能优化实战:从秒级到毫秒级
java·spring boot·redis·后端·python·性能优化