首页 > 解决方案 > 如何为 dotnet 应用程序创建 docker 映像?

问题描述

我有一个 dotnet 项目,当我运行 dotnet 时可以工作,我正在尝试容器化该 dotnet 项目。为此,我创建了 Dockerfile,如下所示:

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1

COPY bin/Release/netcoreapp3.1/publish/ App/
WORKDIR /App

EXPOSE 5000

CMD ["dotnet", "MediatorAgent.dll"]

在创建 docker 映像之前,我确实运行了dotnet publish -c Release. 现在,当我尝试运行此 docker 映像时,出现以下错误

未处理的异常。System.DllNotFoundException:无法加载共享库“indy”或其依赖项之一。为了帮助诊断加载问题,请考虑设置 LD_DEBUG 环境变量: libindy: cannot open shared object file: No such file or directory

我正在按照容器化 .NET Core 应用程序的说明来创建 docker 映像。

标签: c#docker.net-corehyperledger-indy

解决方案


如何为 dotnet 应用程序创建 docker 映像?

嗯,你做到了。

可能出错的是引用 as 的 DLLindy没有复制到 App 文件夹中。

由于您正在复制数据,请验证它是否包含在原始版本中 bin/Release/netcoreapp3.1/publish


推荐阅读