Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
.NET, farklı senaryolar için çeşitli kapsayıcı görüntüleri sağlar. Bu makalede farklı görüntü türleri ve bunların nasıl kullanıldığı açıklanmaktadır. Resmi görüntüler hakkında daha fazla bilgi için bkz. Docker Hub: Microsoft .NET deposu.
Etiketleme düzeni
.NET 8’den itibaren, kapsayıcı görüntülerinin nasıl ayırt edildikleri daha pragmatik hale geliyor. Görüntüleri ayırt etmek için aşağıdaki özellikler kullanılır:
- Uygulamanın hedef çerçeve tanımlayıcısı (TFM).
- İşletim sistemi, sürüm ve mimari.
- Görüntü türü (örneğin,
runtime,aspnet,sdk). - Görüntü değişkeni (örneğin,
*-distroless,*-chiseled). - Görüntü özelliği (örneğin,
*-aot,*-extra).
Boyut için optimize edilmiş görüntüler
Aşağıdaki görüntüler, mümkün olan en küçük görüntü boyutuna neden olacak şekilde odaklanmıştır:
- Alpine
- Mariner distroless (bir tür işletim sistemi)
- Ubuntu ince işlenmiş
ICU veya tzdata gibi genelleştirme bağımlılıklarını içermediğinden bu görüntüler daha küçüktür. Bu görüntüler yalnızca genelleştirme sabit modu için yapılandırılmış uygulamalarla çalışır. Bir uygulamayı sabit genelleştirme için yapılandırmak için proje dosyasına aşağıdaki özelliği ekleyin:
<PropertyGroup>
<InvariantGlobalization>true</InvariantGlobalization>
</PropertyGroup>
Bahşiş
SDK görüntüleri *-distroless veya *-chiseled görüntü türleri için üretilmeyen görüntülerdir. Bileşik görüntüler, aspnetiçin en küçük seçeneğidir.
Genelleştirmeye uygun görüntüler
Genelleştirme gerektiren kapsayıcılı uygulamalar, genelleştirme bağımlılıkları gerektirdiğinden görüntü boyutunu şişirir. Ubuntu ve Debian görüntüleri zaten ICU ve tzdata yüklü olarak gelir.
tzdata bağımlılığı aşağıdaki görüntülere eklendi:
runtime-deps:8.0-jammyruntime-deps:8.0-bookworm-slim
Bu küreselleşme taktiği, aynı etiket altındaki runtime, aspnetve sdk görüntüleri tarafından kullanılır.
Önemli
Debian kitap kurdu görüntülerine tzdata eklemenin pratik bir etkisi yoktur, tzdata'da bir güncelleme olmadığı sürece (ki bu güncelleme henüz Debian'a eklenmemiştir). Bu durumda, .NET görüntüleri daha yeni bir tzdata içerir.
Kerberos, LDAP ve msquic gibi bazı paketler hala isteğe bağlıdır. Bu paketler yalnızca niş senaryolarda gereklidir.
Senaryo tabanlı görüntüler
runtime-deps görüntüleri, özellikle standart kullanıcı ve bağlantı noktası tanımları içerdiğinden önemli bir değere sahiptir. Bunlar, bağımsız ve yerel AOT senaryoları için kullanılabilir. Ancak, yalnızca runtime-deps ve SDK görüntüleri için gereken görüntüleri sağlamak, tüm hayal edilebilir senaryoları etkinleştirmek veya en uygun görüntüleri oluşturmak için yeterli değildir.
runtime-deps gereksinimi yerel AOT, *-distrolessve *-chiseled görüntü türlerine de uzanır. Her işletim sistemi için üç görüntü değişkeni sağlanır (tümü runtime-deps).
*-chiseled görüntüleri kullanarak aşağıdaki örneği göz önünde bulundurun:
-
8.0-jammy-chiseled: Çekirdek CLR için görüntüler, tzdata veya ICU yok. -
8.0-jammy-chiseled-aot: Yerel AOT için görüntüler, tzdata, ICU veya stdc++ yok. -
8.0-jammy-chiseled-extra: Hem Çekirdek CLR hem de yerel AOT görüntüsü tzdata, ICU ve stdc++ içerir.
Senaryolar açısından:
8.0-jammy-chiseled görüntüleri, aynı etiketin runtime ve aspnet görüntüleri için temeldir. Varsayılan olarak, boyut için optimize edildiği için yerel AOT uygulamaları 8.0-jammy-chiseled-aot görüntüsünü kullanabilir. Yerel AOT uygulamaları ve genelleştirme işlevleri gerektiren bağımsız/tek dosya Core CLR uygulamaları 8.0-jammy-chiseled-extrakullanabilir.
Alpine ve Mariner görüntüleri aynı şemayı kullanır.
Bir Not
Debian ve Ubuntu (keskinleştirilmemiş) runtime-deps, birden fazla çeşidi olmayan görüntülerdir.
Yerel AOT kapsayıcı görüntüleri
Yerel AOT görüntüleri sdk deposunda yayımlanır ve -aot son ekiyle etiketlendirilir. Bu görüntüler yerel AOT uygulamaları oluşturmayı sağlar. Uyumlu runtime-deps:*-aot görüntülere sahip dağıtımlar için oluşturulmuştur. Bu görüntüler genellikle normal SDK görüntülerinin iki katı boyutundadır.
AOT görüntüleri şunlar için yayımlanır:
- Alpine
- Denizci
- Ubuntu Teknolojisi
Daha fazla bilgi için bkz: yerel AOT dağıtımı.
Docker hub depoları
.NET için tüm resmi Microsoft görüntüleri microsoft-dotnet Docker Hub kuruluşunda yayımlanır. Aşağıdaki depoları göz önünde bulundurun.
: .NET kararlı görüntü depoları
| Görüntü deposu | Resim |
|---|---|
| sdk | mcr.microsoft.com/dotnet/sdk |
| aspnet | mcr.microsoft.com/dotnet/aspnet |
| çalışma zamanı | mcr.microsoft.com/dotnet/runtime |
| çalışma zamanı deps | mcr.microsoft.com/dotnet/runtime-deps |
| monitör | mcr.microsoft.com/dotnet/monitor |
| Aspire kontrol paneli | mcr.microsoft.com/dotnet/aspire-dashboard |
| örnekleri | mcr.microsoft.com/dotnet/samples |
.NET gece görüntü depolarını :
| Görüntü deposu | Resim |
|---|---|
| gece sürümü ASP.NET | mcr.microsoft.com/dotnet/nightly/aspnet |
| gece monitör | mcr.microsoft.com/dotnet/nightly/monitor |
| nightly-runtime-deps | mcr.microsoft.com/dotnet/nightly/runtime-deps |
| gece çalışma zamanı | mcr.microsoft.com/dotnet/nightly/runtime |
| gecelik sdk | mcr.microsoft.com/dotnet/nightly/sdk |
| gece-aspire-gösterge paneli | mcr.microsoft.com/dotnet/nightly/aspire-dashboard |
.NET Framework görüntü depoları:
| Görüntü deposu | Resim |
|---|---|
| çerçeve | mcr.microsoft.com/dotnet/framework |
| framework-aspnet | mcr.microsoft.com/dotnet/framework/aspnet |
| framework-runtime | mcr.microsoft.com/dotnet/framework/runtime |
| çerçeve örnekleri | mcr.microsoft.com/dotnet/framework/samples |
| framework-sdk | mcr.microsoft.com/dotnet/framework/sdk |
| framework-wcf | mcr.microsoft.com/dotnet/framework/wcf |
Ayrıca bkz.
- .NET 8'deki yenilikler: Kapsayıcı imajları
- .NET 8+ görüntüleri farklı hale getirmeye yönelik yeni yaklaşım