ASP.NET Core projenizi olduğu gibi yayınlayın, yanına SQL Server koyun — Dockerfile yok, port ayarı yok, bağlantı dizesi kodu yok.
nesly .NET'i kendiniz yapılandırdığınız bir kapsayıcı değil, birinci sınıf bir yığın olarak ele alır. .csproj bulunur, SDK imajı hedeflenen çerçeveyi izler (net8.0, net9.0, net10.0), uygulama ReadyToRun yayımlanır, dinleme adresi sizin için ayarlanır. SQL Server'ı tek komutla ekleyin; ConnectionStrings__Default ilk istekten önce ortamda olur.
Nasıl çalışır?
- 1
Projeyi gösterin
Kökte .sln ve src/ altında projeler sorun değil; birden fazla .csproj varsa tek Microsoft.NET.Sdk.Web projesi yayımlanır. Depoya eklenecek bir şey yok.
- 2
SQL Server'ı bağlayın
nesly addon add mssqlkendi veritabanınızı ve girişinizi oluşturur. Kodunuzdabuilder.Configuration.GetConnectionString("Default")olduğu gibi kalır; değer enjekte edilir, depoya girmez. - 3
Dağıtın, migrasyonu koşturun, yayına alın
release = "dotnet ef database update"yazın; paketlenen migrasyonlar her sürüm yayına girmeden önce koşar. Dağıtım yalnız uygulama yanıt verince canlı olur.
Ne alırsınız?
.csproj'un istediği SDK
Derleme imajı <TargetFramework>'ü izler; yeni bir .NET sürümü Microsoft imajı yayımladığı gün kullanılabilir, bizi beklemez.
Varsayılan ReadyToRun
Yayım ReadyToRun'dır; soğuk açılıştan sonraki ilk istek hızlıdır. Native AOT sizin seçiminizdir; EF Core projelerine zorlanmaz.
Ayarlanacak port yok
ASPNETCORE_URLS platformun yönlendirdiği adrese ayarlanır. Kestrel tek satır kod olmadan doğru yerde dinler.
Uygulamanızın zaten anladığı SQL Server
ConnectionStrings__Default ve DATABASE_URL ortam değişkeni olarak gelir; EF Core ve Dapper değiştirmeden okur. Girişiniz yalnız kendi veritabanınıza ulaşır.
PostgreSQL de aynı biçimde
Npgsql tercih ediyorsanız nesly addon add postgres onun için de ConnectionStrings__Default enjekte eder; sağlayıcı değiştirmek paket değişikliğidir, platform değişikliği değil.
Migrasyon sürümün parçası
Migrations klasörü derleme anında bir EF paketine konur; release komutu onu çalışma imajında koşturur, şema ve kod birlikte çıkar.
Fiyat
.NET dağıtımı her planda dahildir. SQL Server Pro'dadır (Türkiye'de KDV dahil ayda ₺869, dışında KDV'siz $18): SQL Server Express üzerinde kendi veritabanınız, veritabanı başına 10 GB'a kadar, gece yedekleri 14 gün saklanır.
- SQL Server Express için lisans ya da örnek ücreti yok; plana dahildir.
- Daha büyük veritabanları için ayrılmış SQL Server örneği henüz satışta değil; planlamadan önce bize yazın.
Kullanım örnekleri
Kurumsal bir API
EF Core migrasyonlu ASP.NET Core Web API, SQL Server ve iş biriminin sürüm öncesi tıklayıp gezebileceği bir önizleme.
Blazor Server ya da Razor Pages
Sunucuda işlenen uygulamalar durumu SQL Server ya da PostgreSQL'de tutan bir kapsayıcı olarak çalışır; oturum açma kimlik kodu yazmadan eklenir.
Windows sunucudan taşınma
Projeyi olduğu gibi alın, SQL Server'ı bağlayın, verinizi kendi araçlarınızla geri yükleyin; GetConnectionString("Default") olduğu gibi kalsın.
Merak edilenler
- Hangi .NET sürümleri destekleniyor?
- .csproj'unuz neyi hedefliyorsa: bugün net8.0, net9.0 ve net10.0. SDK imajı sabit bir listeden değil <TargetFramework>'ten seçilir.
- Dockerfile gerekir mi?
- Hayır. Platform her derlemede projenizden bir Dockerfile yazar. Kökte kendi Dockerfile'ınız varsa yazıldığı gibi o kullanılır.
- SQL Server ücretsiz planda var mı?
- Hayır; SQL Server bir Pro eklentisidir. PostgreSQL ücretsiz planda vardır ve o da
ConnectionStrings__Defaultenjekte eder; orada başlayıp geçebilirsiniz. - EF Core migrasyonlarını dağıtımda çalıştırabilir miyim?
- Evet.
release = "dotnet ef database update"ile Migrations klasörü derlemede paketlenir ve sürüm yayına girmeden uygulanır. Migrations klasörü yoksa derleme sebebini söyleyip durur. - Veritabanı ne kadar büyüyebilir?
- Paylaşımlı Express örneğinde veritabanı başına 10 GB'a kadar. Ayrılmış örnek henüz satışta değil.
İlgili ürünler
Veritabanları ve eklentiler
PostgreSQL, MySQL, SQL Server, MongoDB, Valkey, nesne depolama ve giden e-posta — her biri tek komutla eklenir, ortam değişkeniyle bağlanır.
Oturum açma
Sitenizin önüne tek komutla oturum açma koyun ya da uygulamanıza kendi OpenID Connect istemcisini verin. Yazılacak kimlik kodu yok.
Uygulamalar
Kodunuzu gönderin, dakikalar içinde yayında olsun. Her değişiklik kendi adresini alır; tek komutla önceki sürüme dönersiniz.
.NET + SQL Server şablonuyla başlayın
nesly new dotnet-mssql EF Core'lu çalışan bir ASP.NET Core projesi kopyalar; iki komut sonra veritabanıyla yayında.