Я пытаюсь развернуть веб-приложение с ML. NET в контейнере docker (он работает без проблем, когда я запускаю его в IIS Express), но когда я запускаю его в файле docker, который был создан Visual Studio, я получаю следующую ошибку, говорящую о том, что тензорный поток не был найден:
System.Reflection.TargetInvocationException: цель вызова сгенерировала исключение. ---> System.Reflection.TargetInvocationException: исключение создано целью вызова. ---> System.Reflection.TargetInvocationException: исключение создано целью вызова. ---> System.DllNotFoundException: невозможно загрузить общую библиотеку tenorflow или одну из ее зависимостей. Чтобы помочь в диагностике проблем с загрузкой, рассмотрите возможность установки переменной среды LD_DEBUG: libtensorflow: невозможно открыть файл совместно используемых объектов: нет такого файла или каталога в Tensorflow.c_api.TF_NewGraph () в Tensorflow.Graph..ctor () в Microsoft.ML. TensorFlow. ctx) --- Конец внутренней трассировки стека исключений --- в System.RuntimeMethodHandle.InvokeMethod (цель объекта, аргументы Object [], сигнатура подписи, логический конструктор, логические исключения wrapExceptions) в System.Reflection.RuntimeMethodInfo.Invoke (Object obj, BindingFlags invokeAttr, Binder binder, параметры Object [], культура CultureInfo) в System.Reflection.MethodBase.Invoke (Object obj, параметры Object []) в Microsoft.ML.Runtime.ComponentCatalog. Загрузить Введите signatureType, TRes & result, String name, String options, Object [] extra) в Microsoft.ML.Runtime.ComponentCatalog.TryCreateInstance [TRes, TSig] (IHostEnvironment env, TRes & result, String name, String options, Object [] extra) в Microsoft.ML.ModelLoadContext.TryLoadModelCore [TRes, TSig] (IHostEnvironment env, TRes & result, Object [] extra) в Microsoft.ML.ModelLoadContext.TryLoadModel [TRes, TSig] (IHostEnvironment env, TResReader и результат, EntryRepository Ent. , String dir, Object [] extra) в Microsoft.ML.ModelLoadContext.LoadModel [TRes, TSig] (IHostEnvironment env, TRes & result, RepositoryReader rep, Entry ent, String dir, Object [] extra) в Microsoft.ML.ModelLoadContext. LoadModelOrNull [TRes, TSig] (IHostEnvironment env, TR es & result, RepositoryReader rep, String dir, Object [] extra) в Microsoft.ML.ModelLoadContext.LoadModelOrNull [TRes, TSig] (IHostEnvironment env, TRes & result, String name, Object [] extra) в Microsoft.ML.ModelLoadContext.LoadModel [TRes, TSig] (IHostEnvironment env, TRes & result, String name, Object [] extra) в Microsoft.ML.Data.MulticlassPredictionTransformer.Create (IHostEnvironment env, ModelLoadContext ctx)
вот docker файл для справки:
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build
WORKDIR /src
COPY ["Hotdogapp/Server/Hotdogapp.Server.csproj", "Hotdogapp/Server/"]
COPY ["Hotdogapp/Shared/Hotdogapp.Shared.csproj", "Hotdogapp/Shared/"]
COPY ["Hotdogapp/Client/Hotdogapp.Client.csproj", "Hotdogapp/Client/"]
RUN dotnet restore "Hotdogapp/Server/Hotdogapp.Server.csproj"
COPY . .
WORKDIR "/src/Hotdogapp/Server"
RUN dotnet build "Hotdogapp.Server.csproj" -c Release -o /app/build
FROM build AS publish
RUN dotnet publish "Hotdogapp.Server.csproj" -c Release -o /app/publish
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "Hotdogapp.Server.dll"]
есть ли специальный образ, который я должен использовать для ML.NET / TensorFlow?