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作为基础镜像来打包自己的项目镜像了

特此记录!

相关推荐
JIngJaneIL3 分钟前
基于java+ vue交友系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·交友
普通网友8 分钟前
Bash语言的图算法
开发语言·后端·golang
苹果酱056710 分钟前
解决linux mysql命令 bash: mysql: command not found 的方法
java·vue.js·spring boot·mysql·课程设计
m0_7431251313 分钟前
claude --version 报错Claude Code on Windows requires git-bash (https://git-scm.com/downloads/win).
开发语言·git·bash
24级计算机应用技术3班闫卓14 分钟前
Bash Shell 基础操作全面指南
开发语言·bash
雨岚霏15 分钟前
Bash语言的数据库编程
开发语言·后端·golang
被AI抢饭碗的人22 分钟前
linux:线程池
linux·开发语言
lsx20240628 分钟前
Kotlin 继承
开发语言
程序员飞哥32 分钟前
这样做的幂等也太全了吧
java·后端·spring
虫小宝35 分钟前
返利软件架构设计:多平台适配的抽象工厂模式实践
java·开发语言·抽象工厂模式