diff --git a/backend/src/Squidex/Config/Orleans/OrleansServices.cs b/backend/src/Squidex/Config/Orleans/OrleansServices.cs index fb7cb07e8..0e20e418d 100644 --- a/backend/src/Squidex/Config/Orleans/OrleansServices.cs +++ b/backend/src/Squidex/Config/Orleans/OrleansServices.cs @@ -76,7 +76,18 @@ namespace Squidex.Config.Orleans { ["MongoDB"] = () => { - var address = Helper.ResolveIPAddressAsync(Dns.GetHostName(), AddressFamily.InterNetwork).Result; + IPAddress address; + + var configuredAddress = config.GetOptionalValue("orleans:ipAddress", string.Empty); + + if (!string.IsNullOrWhiteSpace(configuredAddress)) + { + address = IPAddress.Parse(configuredAddress); + } + else + { + address = Helper.ResolveIPAddressAsync(Dns.GetHostName(), AddressFamily.InterNetwork).Result; + } builder.ConfigureEndpoints( address, diff --git a/backend/src/Squidex/appsettings.json b/backend/src/Squidex/appsettings.json index eff609853..05d78445c 100644 --- a/backend/src/Squidex/appsettings.json +++ b/backend/src/Squidex/appsettings.json @@ -378,7 +378,11 @@ /* * The ports used by Orleans to connect to external clients. Not used. */ - "gatewayPort": "40000" + "gatewayPort": "40000", + /* + * The advertised IP address. Usually not needed. + */ + "ipAddress": "" }, "eventStore": {