diff --git a/go/config.go b/go/config.go index 3457ed8..f36e8ad 100644 --- a/go/config.go +++ b/go/config.go @@ -17,6 +17,7 @@ limitations under the License. package main import ( + "net" "os" "github.com/joho/godotenv" @@ -69,9 +70,16 @@ func readConfig() (*config, error) { // Get server address serverAddress := os.Getenv("SERVER_ADDRESS") if serverAddress == "" { - serverAddress, err = os.Hostname() + addrs, err := net.InterfaceAddrs() if err != nil { - return nil, errors.Wrap(err, "could not resolve hostname") + panic(err) + } + + for _, addr := range addrs { + if ipnet, ok := addr.(*net.IPNet); ok && !ipnet.IP.IsLoopback() && ipnet.IP.To4() != nil { + serverAddress = ipnet.IP.String() + break + } } } c.address = serverAddress