myCSharp.de - DIE C# und .NET Community (https://www.mycsharp.de/wbb2/index.php)
- Entwicklung (https://www.mycsharp.de/wbb2/board.php?boardid=3)
-- Web-Technologien (https://www.mycsharp.de/wbb2/board.php?boardid=86)
--- Application Settings bei Docker-Anwendungen (https://www.mycsharp.de/wbb2/thread.php?threadid=122933)


Geschrieben von JimStark am 22.05.2020 um 13:37:
  Application Settings bei Docker-Anwendungen
Hey,

habe nochmal eine ähnliche Frage zur der Services Thematik:

Ich wollte mit der Config.Net Library Einstellungen verwalten, die habe ich so eingebunden:

C#-Code:
            // Add settings:
            services.AddScoped<ISettings>(_ => new ConfigurationBuilder<ISettings>()
                .UseIniFile("config.ini")
                .Build()
            );

Wenn ich den Dateiname so angebe greift es im Projektordner (nicht bin/Debug) auf die Datei zu (mit IIS Express). Wie gibt man solche Dateinamen am besten an? Hintergrund ist, ich möchte diese INI Datei dann im Docker Container mounten, dass es jeder unkompliziert konfigurieren kann, ohne app.config, etc.


Geschrieben von Abt am 22.05.2020 um 15:01:
 
Ini Dateien sind keine Konfigurationsdateien. Warum Ini und nicht wie seit ca. 30 Jahren empfohlen und vom Framework auch unterstützt einfach XML?

Konfigrationen von Anwendungen in Docker erfolgt über die Environment Settings.
 ASP.NET Core and Docker Environment Variables

Settings über ein Shared File in Docker ist alles andere als ein guter Weg:
- Environment Settings können zentral verwaltet werden
- Environment Settings skalieren
- Environment Settings unterstützen prinzipiell Hot Reload
- Environment Settings können über Compliance Tools verwaltet werden
- Environment Settings sind verschlüsselt
- ..

Settings gehören in Docker niemals auf Volumes.


Geschrieben von JimStark am 22.05.2020 um 16:00:
 
Perfekt vielen Dank! An Umgebungsvariablen habe ich gar nicht gedacht.
Habe es jetzt auch so gemacht:

C#-Code:
            services.AddScoped<ISettings>(_ => new ConfigurationBuilder<ISettings>()
                .UseAppConfig()
                .UseEnvironmentVariables()
                .Build()
            ) ;


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 31.05.2020 03:05