Sangat mudah untuk memulai dengan .NET Core dan/atau ASP.NET Core dengan Docker. Jika Anda telah menginstal Docker, Anda tidak perlu menginstal apa pun untuk mencoba .NET Core, tentu saja.
Untuk menjalankan sedikit aplikasi konsol .NET Core:
docker run --rm mcr.microsoft.com/dotnet/core/samples:dotnetapp
Dan hasilnya:
latest: Pulling from dotnet/core/samples
Hello from .NET Core!
...SNIP...
**Environment**
Platform: .NET Core
OS: Linux 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018
Untuk menjalankan situs web ASP.NET Core kecil yang cepat, cukup:
docker run -it --rm -p 8000:80 --name aspnetcore_sample mcr.microsoft.com/dotnet/core/samples:aspnetapp
Dan ini berjalan di localhost:8000
Anda juga dapat menghosting ASP.NET Core Images dengan Docker melalui HTTPS dengan image ini, atau menjalankan aplikasi ASP.NET Core di Windows Containers.
Perhatikan bahwa tim Microsoft sekarang menerbitkan gambar kontainer ke MCR (Microsoft Container Registry) sehingga mereka dapat menggunakan Azure CDN dan menarik lebih cepat saat mereka lebih dekat dengan Anda secara global. Gambar dimulai dari MCR dan kemudian dapat disindikasikan ke registry penampung lainnya.
Repo baru mengikuti:
- Ketergantungan .NET Core Runtime (hanya hal-hal yang dibutuhkan .NET Core, tetapi bukan .NET Core itu sendiri - berguna jika Anda ingin mendistribusikan salinan Anda sendiri dan masih menginginkan ukuran gambar wadah kecil)
- .NET Core Runtime (Hanya apa yang diperlukan untuk menjalankan aplikasi .NET Core)
- .NET Core SDK (termasuk compiler, semuanya)
- Waktu proses ASP.NET Core (semua yang Anda perlukan untuk MENJALANKAN aplikasi web ASP.NET Core)
Saat Anda "menarik buruh pelabuhan", Anda dapat menggunakan string tag untuk .NET Core dan berfungsi di semua versi .NET Core yang didukung
- SDK:
docker pull mcr.microsoft.com/dotnet/core/sdk:2.1
- Waktu Proses Inti ASP.NET:
docker pull mcr.microsoft.com/dotnet/core/aspnet:2.1
- .NET Core Runtime:
docker pull mcr.microsoft.com/dotnet/core/runtime:2.1
- Ketergantungan Waktu Proses Inti .NET:
docker pull mcr.microsoft.com/dotnet/core/runtime-deps:2.1
Misalnya, saya dapat menjalankan .NET Core 3.0 SDK dan mengacaukannya seperti ini:
docker run -it mcr.microsoft.com/dotnet/core/sdk:3.0
Saya telah menggunakan Docker untuk menjalankan pengujian unit saya di situs podcast saya di dalam wadah secara lokal. Kemudian saya memasang volume dan membuang hasil tes di folder lokal dan memeriksanya dengan Visual Studio
docker build --pull --target testrunner -t podcast:test .
docker run --rm -v c:\github\hanselminutes-core\TestResults:/app/hanselminutes.core.tests/TestResults podcast:test
Saya kemudian dapat meng-host wadah Docker di Azure App Service for Containers, atau sebagai contoh tagihan satu kali per detik dengan Azure Container Instances (ACI).
Sudahkah Anda menggunakan .NET Core di Docker? Bagaimana kabarmu?
Sponsor: Kelola Permintaan Tarik GitHub langsung dari IDE dengan JetBrains Rider terbaru. Profiler kinerja terintegrasi di Windows juga datang untuk menyelamatkan.