System.IO.IOException: The configured user limit (128) on the number of inotify instances has been reached Hatası
Merhaba,
Linux dağıtımlarında dotnet çalıştırmanız sonucunda bu hatayı görebilirsiniz. Sebebi host oluşturulurken eklediğiniz "appsettings.json" dosyası.
Host bölümünde appsettings.json'ın "reloadOnChange" parametresini false yapın.
config.AddJsonFile("appsettings.json", optional: false, reloadOnChange: false);
WebApplicationFactory içindeki ReloadOnChange'i kapatmak gibi birçok önerileri uygulasanız da çözemeyebilirsiniz. Bunun daha iyi çözümü mevcut.
İkinci çözüm, host oluşturulmadan evvel aşağıdaki tanımlamayı yaptırın:
Environment.SetEnvironmentVariable("DOTNET_hostBuilder:reloadConfigOnChange", "false");
Yani uygulamalı böyle oluyor:
Environment.SetEnvironmentVariable("DOTNET_hostBuilder:reloadConfigOnChange", "false");
IHost host = Microsoft.Extensions.Hosting.Host.CreateDefaultBuilder(null)
.ConfigureServices((hostContext, services) =>
{ ....};
Üçüncü çözüm "/etc/sysctl.conf" dosyasını düzenlemek.
Burada da aktarılmış: https://github.com/dotnet/aspnetcore/issues/8449#issuecomment-512275929
Bu komutu yazdırın:
echo fs.inotify.max_user_instances=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Umarım sorununuz çözülür.
İyi çalışmalar,
Recep
Bu gönderiyi 19.05.2024 13:21:42 tarihinde Rserit düzenledi.