Запуск dotnetCore 2.2
У меня есть зависимость clr.dll в моей библиотеке .Logic. Этот clr.dll вызывает unmanaged.dll, который я не могу загрузить в качестве зависимости, и вместо этого мне нужно просто скопировать, чтобы сделать корзину таким образом.
<PropertyGroup>
<TargetFramework>netcoreapp2.2</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\myApp.Models\myApp.Models.csproj" />
</ItemGroup>
<ItemGroup>
<Reference Include="CLR">
<HintPath>..\Dependencies\NonNuget\CLR.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<None Update="unmanaged.dll">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>
мой файл докера выглядит так:
#Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed.
#For more information, please see https://aka.ms/containercompat
FROM microsoft/dotnet:2.2-aspnetcore-runtime-nanoserver-1803 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM microsoft/dotnet:2.2-sdk-nanoserver-1803 AS build
WORKDIR /src
COPY ["myApp.Api/myApp.Api.csproj", "myApp.Api/"]
COPY ["myApp.logic/myApp.logic.csproj", "myApp.logic/"]
COPY ["myApp.Models/myApp.Models.csproj", "myApp.Models/"]
RUN dotnet restore "myApp.Api/myApp.Api.csproj"
COPY . .
WORKDIR "/src/myApp.Api"
RUN dotnet build "myApp.Api.csproj" -c Release -o /app
FROM build AS publish
RUN dotnet publish "myApp.Api.csproj" -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "myApp.Api.dll"]
** Когда я запускаю api вне докера, он работает нормально. **
Когда я создаю образ докера и запускаю API, я получаю
System.DllNotFoundException: невозможно загрузить DLL 'unmanaged.dll'
Я предположил, что файл каким-то образом не был включен в мой образ докера, но когда я запускаю docker exec -it myapp, я вижу, что файл присутствует
146 appsettings.Development.json
105 appsettings.json
**3,426,680 unmanaged.dll**
239,429 myApp.Api.deps.json
13,824 myApp.Api.dll
2,696 myApp.Api.pdb
252 myApp.Api.runtimeconfig.dev.json
224 myApp.Api.runtimeconfig.json
1,188 myApp.logic.deps.json
5,120 myApp.logic.dll
632 myApp.logic.pdb
1,459 myApp.Models.deps.json
4,608 myApp.Models.dll
708 myApp.Models.pdb
**5,120 clr.dll**
Я мог бы действительно воспользоваться некоторыми советами, так как я очень плохо знаком с докером и не уверен, куда идти дальше.