Error: no fue posible encontrar ningún SDK de .NET Core instalado

14

Cuando ejecuto el comando docker run -i -t myProjectmuestra error:

No fue posible encontrar ningún SDK de .NET Core instalado. ¿Quería ejecutar los comandos de SDK de .NET Core? Instale un SDK de .NET Core desde: https://aka.ms/dotnet-download

Sin embargo, tengo instalado .NET Core SDK y PATHes correcto (seguido aquí: https://docs.microsoft.com/en-us/aspnet/core/test/troubleshoot?view=aspnetcore-3.1#no-net -core-sdks-were-detect ).

Además, mi proyecto solo necesita SDK de .NET Core en tiempo de ejecución.

¿Alguien sabe cuál podría ser el problema?

Al ejecutar dotnet --info obtuve:

.NET Core SDK (que refleja cualquier global.json): Versión: 3.1.101 Commit: b377529961

Entorno de tiempo de ejecución: Nombre del sistema operativo: Versión del sistema operativo Windows: 10.0.18363 Plataforma del sistema operativo: Windows RID: win10-x86 Ruta de acceso base: C: \ Archivos de programa (x86) \ dotnet \ sdk \ 3.1.101 \

Host (útil para soporte): Versión: 3.1.1 Commit: a1388f194c

.NET Core SDK instalados: 3.1.101 [C: \ Archivos de programa (x86) \ dotnet \ sdk]

Tiempo de ejecución de .NET Core instalado: Microsoft.AspNetCore.App 3.1.0 [C: \ Archivos de programa (x86) \ dotnet \ shared \ Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.1 [C: \ Archivos de programa (x86 ) \ dotnet \ shared \ Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.0 [C: \ Archivos de programa (x86) \ dotnet \ shared \ Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.1 [C : \ Archivos de programa (x86) \ dotnet \ shared \ Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 3.1.0 [C: \ Archivos de programa (x86) \ dotnet \ shared \ Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop. Aplicación 3.1.1 [C: \ Archivos de programa (x86) \ dotnet \ shared \ Microsoft.WindowsDesktop.App]

Para instalar tiempos de ejecución o SDK adicionales de .NET Core: https://aka.ms/dotnet-download

iristan
fuente
¿Cómo se ve tu Dockerfile? ¿El ENTRYPOINTcomando hace referencia a la ruta correcta?
Matt Thalman
Si. Solo lo resolví: en dockerfile tenía aspnetcore-runtime-2.0 pero esa versión no se encuentra. Después de cambiar a aspnetcore-runtime-2.2, funciona para mí.
iristán
.NET Core 2.2 está fuera de soporte a partir de diciembre pasado. Debería considerar actualizar a 3.1. Consulte hub.docker.com/_/microsoft-dotnet-core para obtener las últimas imágenes compatibles.
Matt Thalman
Entendido. ¡Gracias!
iristán

Respuestas:

5

Para mí sucedió cuando me equivoqué ENTRYPOINTen miDOCKERFILE

# Build runtime image
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1
WORKDIR /app
COPY --from=build-env /app/out .
ENTRYPOINT ["dotnet", "SampleAppForDocker.dll"]

Asegúrese de ejecutar dll correcto en su ENTRYPOINT. Tenía un nombre de dllarchivo incorrecto .

Krzysztof Madej
fuente