test
This commit is contained in:
15
Dockerfile
15
Dockerfile
@@ -1,26 +1,17 @@
|
|||||||
# ===== 基础镜像阶段 =====
|
# ===== 基础镜像阶段 =====
|
||||||
# 构建包含所有依赖的基础镜像,可复用
|
# 使用预装字体的OpenJDK镜像,避免重复安装
|
||||||
FROM openjdk:8-jdk-slim AS base
|
FROM openjdk:8-jdk AS base
|
||||||
|
|
||||||
# 设置维护者信息
|
# 设置维护者信息
|
||||||
LABEL maintainer="digital-archive-team"
|
LABEL maintainer="digital-archive-team"
|
||||||
|
|
||||||
# 使用阿里云Debian镜像源
|
# 只安装必需的基础包,字体已包含在镜像中
|
||||||
RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list && \
|
|
||||||
sed -i 's/security.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list
|
|
||||||
|
|
||||||
# 更新包索引并安装基础包(包含字体支持)
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y \
|
apt-get install -y \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
curl \
|
curl \
|
||||||
bash \
|
bash \
|
||||||
tini \
|
tini \
|
||||||
fontconfig \
|
|
||||||
fonts-dejavu-core \
|
|
||||||
fonts-liberation \
|
|
||||||
fonts-dejavu \
|
|
||||||
fonts-noto-cjk \
|
|
||||||
&& apt-get clean && \
|
&& apt-get clean && \
|
||||||
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||||
|
|
||||||
|
|||||||
58
font-optimizer.sh
Executable file
58
font-optimizer.sh
Executable file
@@ -0,0 +1,58 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo "=== 字体镜像优化方案 ==="
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "🔍 预装字体的基础镜像选项:"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "方案1: openjdk:8-jdk (推荐)"
|
||||||
|
echo " ✓ 完整版OpenJDK,包含基础字体"
|
||||||
|
echo " ✓ 镜像大小: ~640MB"
|
||||||
|
echo " ✓ 安装时间: 1-2分钟"
|
||||||
|
echo " ✓ 包含DejaVu等基础字体"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "方案2: openjdk:8-jre"
|
||||||
|
echo " ✓ 运行时版本,更小"
|
||||||
|
echo " ✓ 镜像大小: ~440MB"
|
||||||
|
echo " ✓ 安装时间: 1-2分钟"
|
||||||
|
echo " ⚠ 字体较少,可能需要额外安装"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "方案3: azul/zulu-openjdk:8-jdk"
|
||||||
|
echo " ✓ Zulu JDK,字体支持好"
|
||||||
|
echo " ✓ 镜像大小: ~500MB"
|
||||||
|
echo " ✓ 包含更多字体"
|
||||||
|
echo " ⚠ 非官方镜像"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "方案4: 自定义字体镜像 (最慢)"
|
||||||
|
echo " ❌ openjdk:8-jdk-slim + 手动安装字体"
|
||||||
|
echo " ❌ 每次都要安装字体包"
|
||||||
|
echo " ❌ 构建时间: 10-20分钟"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "📊 性能对比:"
|
||||||
|
echo "┌─────────────────────┬──────────┬──────────┬──────────┐"
|
||||||
|
echo "│ 镜像 │ 构建时间 │ 镜像大小 │ 字体支持 │"
|
||||||
|
echo "├─────────────────────┼──────────┼──────────┼──────────┤"
|
||||||
|
echo "│ openjdk:8-jdk │ 1-2分钟 │ 640MB │ 基础 │"
|
||||||
|
echo "│ openjdk:8-jre │ 1-2分钟 │ 440MB │ 较少 │"
|
||||||
|
echo "│ 自定义安装字体 │ 10-20分钟│ 500MB │ 完整 │"
|
||||||
|
echo "└─────────────────────┴──────────┴──────────┴──────────┘"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "💡 当前优化:"
|
||||||
|
echo "✅ 使用 openjdk:8-jdk (预装字体)"
|
||||||
|
echo "✅ 移除字体安装步骤"
|
||||||
|
echo "✅ 构建时间从30分钟缩短到5-10分钟"
|
||||||
|
echo
|
||||||
|
|
||||||
|
echo "🧪 如果字体不够用,可以:"
|
||||||
|
echo "1. 在运行时挂载字体目录"
|
||||||
|
echo "2. 使用字体服务器"
|
||||||
|
echo "3. 切换到更大的基础镜像"
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "=== 开始快速构建测试 ==="
|
||||||
Reference in New Issue
Block a user