From 91e382c586e3444360af0067de3d35347780fc30 Mon Sep 17 00:00:00 2001 From: Bolke de Bruin <bolke@xs4all.nl> Date: Mon, 18 Mar 2024 13:36:41 +0100 Subject: [PATCH] Move to more flexibility in image --- cmd/rdpgw/config/configuration.go | 11 ++++++++--- dev/docker/Dockerfile | 2 +- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/cmd/rdpgw/config/configuration.go b/cmd/rdpgw/config/configuration.go index 8bd1ff4..43e6761 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 6d91e06..f0e4a75 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"] -- GitLab