diff --git a/cmd/rdpgw/config/configuration.go b/cmd/rdpgw/config/configuration.go index 8bd1ff45ad0ee092bc9e76688379d5a257f51e21..43e6761f0f47dabb7ec2ab6a7edfb36b26db7ea3 100644 --- a/cmd/rdpgw/config/configuration.go +++ b/cmd/rdpgw/config/configuration.go @@ -8,6 +8,7 @@ import ( "github.com/knadh/koanf/providers/file" "github.com/knadh/koanf/v2" "log" + "os" "strings" ) @@ -152,8 +153,12 @@ func Load(configFile string) Configuration { "Caps.TokenAuth": true, }, "."), nil) - if err := k.Load(file.Provider(configFile), yaml.Parser()); err != nil { - log.Fatalf("Error loading config from file: %v", err) + if _, err := os.Stat(configFile); os.IsNotExist(err) { + log.Printf("Config file %s not found, using defaults and environment", configFile) + } else { + if err := k.Load(file.Provider(configFile), yaml.Parser()); err != nil { + log.Fatalf("Error loading config from file: %v", err) + } } if err := k.Load(env.ProviderWithValue("RDPGW_", ".", func(s string, v string) (string, interface{}) { @@ -161,7 +166,7 @@ func Load(configFile string) Configuration { key = ToCamel(key) return key, v }), nil); err != nil { - log.Fatalf("Error loading config from file: %v", err) + log.Fatalf("Error loading config from environment: %v", err) } koanfTag := koanf.UnmarshalConf{Tag: "koanf"} diff --git a/dev/docker/Dockerfile b/dev/docker/Dockerfile index 6d91e06bc1e27cfcdc09b1f16a0517863f6003c5..f0e4a75302ab6f5199d50ec6bb1373794b694171 100644 --- a/dev/docker/Dockerfile +++ b/dev/docker/Dockerfile @@ -41,7 +41,7 @@ COPY --chown=1001 run.sh run.sh COPY --chown=1001 --from=builder /opt/rdpgw /opt/rdpgw COPY --chown=1001 --from=builder /etc/passwd /etc/passwd COPY --chown=1001 --from=builder /etc/ssl/certs /etc/ssl/certs -COPY --chown=1001 rdpgw.yaml /opt/rdpgw/rdpgw.yaml +#COPY --chown=1001 rdpgw.yaml /opt/rdpgw/rdpgw.yaml WORKDIR /opt/rdpgw ENTRYPOINT ["/bin/sh", "/run.sh"]