如何将字体添加到 Windows Docker 容器/图像?

Abh*_*ati 6 containers docker windows-container azure-container-instances .net-4.8

我有一个基于 .NET Framework v4.8 构建的控制台应用程序。我正在尝试使用 docker 映像在 Azure 容器实例(ACI)中运行它。我在本地创建了一个 docker 镜像并将其推送到 ACI,并且运行成功。

现在我面临一个问题。此应用程序发送一封包含 RDLC 报告的电子邮件。但是我在邮件中收到的报告的字体与我之前收到的报告(没有 docker)不同。我发现mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019我正在使用的基本 docker 映像没有加载字体。我需要在我的 docker 镜像/容器中安装字体。我怎样才能做到这一点?

以下是我的 Dockerfile 命令:

FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019  AS BASE
COPY . .
ENTRYPOINT BackgroundService.exe
Run Code Online (Sandbox Code Playgroud)

Abh*_*ati 5

我做了一些调查,找到了一种使用 Dockerfile 将字体添加到容器的方法。我们需要下面的 docker 文件:

COPY arial*.ttf c:/windows/fonts/

以下是更新后的 Dockerfile:

# app image
FROM mcr.microsoft.com/dotnet/framework/runtime:4.8-windowsservercore-ltsc2019  AS BASE
COPY arial*.ttf c:/windows/fonts/
COPY . .
ENTRYPOINT BackgroundService.exe
Run Code Online (Sandbox Code Playgroud)