Dockerfile 1.27 KB
FROM openjdk:8-jdk-alpine

# ========== 新增时区配置 ========== [2,4](@ref)
# 1. 安装时区工具包
RUN apk update && apk add --no-cache tzdata
# 2. 设置上海时区
ENV TZ=Asia/Shanghai
# 3. 创建时区软链接并写入时区文件
RUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && \
    echo $TZ > /etc/timezone
# ================================

# 创建Windows字体目录
RUN mkdir -p /usr/share/fonts/windows

# 添加Windows字体(在构建时复制)
# 请确保在构建上下文中有fonts目录包含所有Windows字体
COPY ./fonts /usr/share/fonts/windows

# 安装基础字体工具
RUN apk add --no-cache fontconfig && \
    # 手动生成字体缓存
    cd /usr/share/fonts/windows && \
    # 创建索引文件
    ls -1 *.tt* > fonts.scale && \
    echo "0" > fonts.dir && \
    # 设置权限
    chmod 644 /usr/share/fonts/windows/* && \
    # 强制刷新字体缓存
    fc-cache -f -v

# 应用核心启动参数(启用headless模式,指定字体路径)
ENV JAVA_FONT_PATH="/usr/share/fonts/windows" \
    JAVA_OPTIONS="-Djava.awt.headless=true -Djava.awt.fonts=/usr/share/fonts/windows"


COPY target/antiSpoofingHelper-1.0-SNAPSHOT.jar /ash.jar

EXPOSE 8092

ENTRYPOINT ["sh", "-c", "exec java -Djava.security.egd=file:/dev/./urandom -jar /ash.jar"]