You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Amazon Linux Docker镜像中安装微软字体?

解决方案

方案1:在Amazon Linux镜像中编译cabextract并手动安装微软核心字体

通过源码编译cabextract解决系统依赖问题,再从微软官方源合法下载并安装字体:

  1. 安装编译依赖
RUN yum install -y gcc make wget
  1. 编译安装cabextract(适配当前系统glibc版本)
RUN wget https://www.cabextract.org.uk/cabextract-1.9.1.tar.gz \
    && tar -xzf cabextract-1.9.1.tar.gz \
    && cd cabextract-1.9.1 \
    && ./configure --prefix=/usr \
    && make \
    && make install \
    && cd .. && rm -rf cabextract-1.9.1*
  1. 下载并安装微软核心字体
RUN mkdir -p /tmp/fonts && cd /tmp/fonts \
    && FONTS=( \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/arial32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/arialb32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/comic32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/courie32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/georgi32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/impact32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/times32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/trebuc32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/verdana32.exe" \
        "https://download.microsoft.com/download/f/5/a/f5a3df76-d856-4a61-a6bd-722f52a5be26/webdin32.exe" \
    ) \
    && for font in "${FONTS[@]}"; do \
        wget -q "$font"; \
        cabextract -L -F '*.ttf' "$(basename "$font")"; \
        rm "$(basename "$font")"; \
    done \
    && mkdir -p /usr/share/fonts/winfonts \
    && cp *.ttf /usr/share/fonts/winfonts/ \
    && fc-cache -fv \
    && cd / && rm -rf /tmp/fonts

注:上述下载链接均来自微软官方授权源,安装过程符合微软字体EULA要求。

方案2:切换到Debian/Ubuntu系的Corretto+Tomcat镜像

改用Debian基础的Corretto镜像,直接用apt安装预编译的Tomcat、tomcat-native库和微软字体,彻底规避Amazon Linux的依赖问题:

示例Dockerfile片段:

FROM amazoncorretto:17-debian

RUN apt-get update \
    && echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections \
    && apt-get install -y --no-install-recommends \
        tomcat9 \
        libtcnative-1 \
        ttf-mscorefonts-installer \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

这里libtcnative-1是预编译的Tomcat原生库,无需手动编译,完美匹配你的需求。

方案3:使用开源替代字体(快速无依赖)

如果对字体一致性要求不苛刻,可采用Liberation字体——它是微软核心字体的开源兼容替代,外观几乎一致,直接通过yum安装即可:

RUN yum install -y liberation-fonts

安装后系统会自动将Liberation字体映射为Arial、Times New Roman等微软字体的替代,无需额外配置。

内容的提问来源于stack exchange,提问作者D.Ogranos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:14:51