Kesalahan: Tidak mungkin menemukan SDK NET Core yang diinstal

14

Ketika saya menjalankan perintah docker run -i -t myProjectitu menunjukkan kesalahan:

Itu tidak mungkin untuk menemukan SDK NET Core yang diinstal. Apakah Anda bermaksud menjalankan perintah .NET Core SDK? Instal .NET Core SDK dari: https://aka.ms/dotnet-download

Namun, saya sudah menginstal .NET Core SDK dan PATHsudah benar (diikuti di sini: https://docs.microsoft.com/en-us/aspnet/core/test/troubleshoot?view=aspnetcore-3.1#no-net -core-sdks-sudah terdeteksi ).

Terlebih lagi, proyek saya hanya membutuhkan runtime .NET Core SDK.

Adakah yang tahu apa masalahnya?

Saat menjalankan dotnet --info saya mendapat:

.NET Core SDK (mencerminkan global.json apa pun): Versi: 3.1.101 Komit: b377529961

Lingkungan Runtime: Nama OS: Versi OS Windows: 10.0.18363 Platform OS: Windows RID: win10-x86 Jalur Dasar: C: \ Program Files (x86) \ dotnet \ sdk \ 3.1.101 \

Host (berguna untuk dukungan): Versi: 3.1.1 Komit: a1388f194c

.NET Core SDK diinstal: 3.1.101 [C: \ Program Files (x86) \ dotnet \ sdk]

.NET Core runtimes diinstal: Microsoft.AspNetCore.App 3.1.0 [C: \ Program Files (x86) \ dotnet \ shared \ Microsoft.AspNetCore.App] Microsoft.AspNetCore.App 3.1.1 [C: \ Program Files (x86) ) \ dotnet \ shared \ Microsoft.AspNetCore.App] Microsoft.NETCore.App 3.1.0 [C: \ Program Files (x86) \ dotnet \ shared \ Microsoft.NETCore.App] Microsoft.NETCore.App 3.1.1 [C : \ Program Files (x86) \ dotnet \ shared \ Microsoft.NETCore.App] Microsoft.WindowsDesktop.App 3.1.0 [C: \ Program Files (x86) \ dotnet \ shared \ Microsoft.WindowsDesktop.App] Microsoft.WindowsDesktop. App 3.1.1 [C: \ Program Files (x86) \ dotnet \ shared \ Microsoft.WindowsDesktop.App]

Untuk menginstal tambahan .NET Core runtimes atau SDK: https://aka.ms/dotnet-download

iristan
sumber
Seperti apa Dockerfile Anda? Apakah ENTRYPOINTperintah referensi jalan yang benar?
Matt Thalman
Iya. Baru saja dipecahkan: di dockerfile saya punya aspnetcore-runtime-2.0 tetapi versi itu tidak ditemukan. Setelah saya mengubah ke aspnetcore-runtime-2.2 itu berfungsi untuk saya.
iristan
.NET Core 2.2 tidak didukung pada Desember lalu. Anda harus mempertimbangkan untuk meningkatkan ke 3.1. Lihat hub.docker.com/_/microsoft-dotnet-core untuk gambar yang didukung terbaru.
Matt Thalman
Oke. Terima kasih!
iristan

Jawaban:

5

Bagi saya itu terjadi ketika saya memiliki salah ENTRYPOINTdi sayaDOCKERFILE

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

Pastikan Anda menjalankan dll yang benar di ENTRYPOINT. Nama dllfile saya salah .

Krzysztof Madej
sumber