From 752b90b0487e45f8b8eff0350ff8ed6771b54453 Mon Sep 17 00:00:00 2001 From: 18278715334 <18278715334@163.com> Date: Thu, 4 Dec 2025 10:41:07 +0800 Subject: [PATCH] 1 --- Dockerfile | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 32d75a3..b725199 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,6 +31,13 @@ RUN BUILD_TIME=${BUILD_TIME:-$(date -u +"%Y-%m-%dT%H:%M:%SZ")} && \ -o tyapi-server \ cmd/api/main.go +# 创建字体文件 tar 包(如果字体文件存在) +RUN if [ -d internal/shared/pdf/fonts ] && [ "$(ls -A internal/shared/pdf/fonts 2>/dev/null)" ]; then \ + tar czf /tmp/fonts.tar.gz -C internal/shared/pdf/fonts .; \ + else \ + touch /tmp/fonts.tar.gz; \ + fi + # 第二阶段:运行阶段 FROM alpine:3.19 @@ -53,9 +60,17 @@ COPY --from=builder /app/tyapi-server . COPY config.yaml . COPY configs/ ./configs/ -# 复制字体文件(PDF生成需要)- 创建目录结构并复制字体文件 +# 复制字体文件(PDF生成需要) RUN mkdir -p ./internal/shared/pdf/fonts -COPY --from=builder /app/internal/shared/pdf/fonts/ ./internal/shared/pdf/fonts/ +# 从 builder 阶段复制字体 tar 包并解压(如果存在字体文件) +COPY --from=builder /tmp/fonts.tar.gz /tmp/fonts.tar.gz +RUN if [ -s /tmp/fonts.tar.gz ]; then \ + tar xzf /tmp/fonts.tar.gz -C ./internal/shared/pdf/fonts/ && \ + rm /tmp/fonts.tar.gz; \ + else \ + echo "字体文件不存在,将在运行时通过 volume 挂载或手动复制"; \ + rm /tmp/fonts.tar.gz; \ + fi # 暴露端口