diff --git a/DDNSUpdater/Program.cs b/DDNSUpdater/Program.cs index 492ec67..0dee265 100644 --- a/DDNSUpdater/Program.cs +++ b/DDNSUpdater/Program.cs @@ -8,6 +8,8 @@ using RestSharp; var builder = new ConfigurationBuilder() .AddJsonFile("appsettings.json", optional: false, reloadOnChange: false); + + var configuration = builder.Build(); @@ -18,6 +20,9 @@ var serviceProvider = new ServiceCollection() .AddSingleton() .BuildServiceProvider(); + + + var dataAccess = serviceProvider.GetService(); dataAccess.Start(); diff --git a/DDNSUpdater/Services/DDNSService.cs b/DDNSUpdater/Services/DDNSService.cs index e4e31cc..4df6d24 100644 --- a/DDNSUpdater/Services/DDNSService.cs +++ b/DDNSUpdater/Services/DDNSService.cs @@ -21,8 +21,21 @@ public class DDNSService : IDDNSService { _logger = logger; APIKey = configuration.GetValue("APIKey"); + if(Environment.GetEnvironmentVariable("API_Key") != "") + APIKey = Environment.GetEnvironmentVariable("API_Key"); + logger.LogDebug($"Got the Following Key: {APIKey}"); Domains = configuration.GetSection("Domains").Get>(); + if (Environment.GetEnvironmentVariable("DOMAINS") != "") + { + var domainsRaw = Environment.GetEnvironmentVariable("DOMAINS"); + var domains = new List(); + domains = domainsRaw.Split(",").ToList(); + domains.ForEach(x=>x.Replace(",","")); + Domains = domains; + } + + logger.LogDebug($"Got the Following Domains: {Domains.ToString()}"); } diff --git a/Dockerfile b/Dockerfile index 9ce6e81..d641494 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,4 +15,6 @@ RUN dotnet publish "DDNSUpdater.csproj" -c Release -o /app/publish FROM base AS final WORKDIR /app COPY --from=publish /app/publish . +ENV API_Key=default +ENV DOMAINS=default ENTRYPOINT ["dotnet", "DDNSUpdater.dll"]