У меня есть основное приложение ASPNET, работающее в контейнере Docker. В настоящее время я не могу запустить более 64 контейнеров ( изначально описанных здесь ) изображения, которое я создал.
При интерактивном запуске контейнера я обнаружил эту ошибку на этапе запуска.
Необработанное исключение: System.IO.IOException: Сконфигурированное пользовательское ограничение (128) на количество экземпляров inotify было достигнуто.
в System.IO.FileSystemWatcher.StartRaisingEvents ()
в System.IO.FileSystemWatcher.StartRaisingEventsIfNotDisposed ()
в System.IO.FileSystemWatcher.set_EnableRaisingEvents (логическое значение)
в Microsoft.Extensions.FileProviders.Physical.PhysicalFilesWatcher.TryEnableFileSystemWatcher ()
в Microsoft.Extensions.FileProviders.Physical.PhysicalFilesWatcher.CreateFileChangeToken (строковый фильтр)
в Microsoft.Extensions.FileProviders.PhysicalFileProvider.Watch (строковый фильтр)
в Microsoft.Extensions.Configuration.FileConfigurationProvider. <. ctor> b__0_0 ()
в Microsoft.Extensions.Primitives.ChangeToken.OnChange (Func`1 changeTokenProducer, действие changeTokenConsumer)
в Microsoft.Extensions.Configuration.FileConfigurationProvider..ctor (источник FileConfigurationSource)
в Microsoft.Extensions.Configuration.Json.JsonConfigurationSource.Build (сборщик IConfigurationBuilder)
в Microsoft.Extensions.Configuration.ConfigurationBuilder.Build ()
в
Microsoft.AspNetCore.Hosting.WebHostBuilder.BuildCommonServices (AggregateException & hostingStartupErrors)
в Microsoft.AspNetCore.Hosting.WebHostBuilder.Build ()
в MyProjectName.Program.Main (String [] args) в /src/MyProjectName/Program.cs:line 10
Program.cs
имеет только содержимое по умолчанию
1 using Microsoft.AspNetCore;
2 using Microsoft.AspNetCore.Hosting;
3
4 namespace CmcIiiCgiSim
5 {
6 public class Program
7 {
8 public static void Main(string[] args)
9 {
10 CreateWebHostBuilder(args).Build().Run();
11 }
12
13 public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
14 WebHost.CreateDefaultBuilder(args)
15 .UseStartup<Startup>();
16 }
17 }
Похоже, что наблюдение за изменениями конфигурации является настройкой по умолчанию ASP или, скорее, любого основного приложения ASPNET ( см. Документацию MS )
Мой вопрос: как я могу отключить эту опцию в settings для существующих файлов конфигурации?
В надежде, что это также отключит наблюдателя файловой системы и избавит от ошибки.
Я нашел немало примеров, в которых говорится, как это можно сделать программно для дополнительных файлов настроек. Но в моем случае конфигурация не изменится, и я бы предпочел, чтобы изображение не ограничивалось 64 контейнерами.