Cant login into squidex ran locally


#1

I have used local docker compose file

services:
  squidex_mongo:
    image: mongo:latest
    volumes:
      - mongo:/data/db
    networks:
      - internal
    restart: unless-stopped

  squidex_squidex:
    image: "squidex/squidex:latest"
    ports:
      - "80:80"
    environment:
      - URLS__BASEURL=${SQUIDEX_PROTOCOL}://${SQUIDEX_DOMAIN}/
      - URLS__ENFORCEHTTPS=${SQUIDEX_FORCE_HTTPS}
      - EVENTSTORE__MONGODB__CONFIGURATION=mongodb://squidex_mongo
      - STORE__MONGODB__CONFIGURATION=mongodb://squidex_mongo
      - IDENTITY__ADMINEMAIL=${SQUIDEX_ADMINEMAIL}
      - IDENTITY__ADMINPASSWORD=${SQUIDEX_ADMINPASSWORD}
      - IDENTITY__GOOGLECLIENT=${SQUIDEX_GOOGLECLIENT}
      - IDENTITY__GOOGLESECRET=${SQUIDEX_GOOGLESECRET}
      - IDENTITY__GITHUBCLIENT=${SQUIDEX_GITHUBCLIENT}
      - IDENTITY__GITHUBSECRET=${SQUIDEX_GITHUBSECRET}
      - IDENTITY__MICROSOFTCLIENT=${SQUIDEX_MICROSOFTCLIENT}
      - IDENTITY__MICROSOFTSECRET=${SQUIDEX_MICROSOFTSECRET}
      - IDENTITY__SHOWPII=true
      - IDENTITY__PRIVACYURL=http://research.squidex.com/privacy.html
      - REBUILD_APPS=true
      - LETSENCRYPT_HOST=${SQUIDEX_DOMAIN}
      - LETSENCRYPT_EMAIL=${SQUIDEX_ADMINEMAIL}
      - UI__ONLYADMINSCANCREATEAPPS=True
    depends_on:
      - squidex_mongo
    volumes:
      - squidex_assets:/app/Assets
    networks:
      - internal
    restart: unless-stopped
    
networks:
  internal:
    driver: bridge

volumes:
  mongo:
    driver: local
  squidex_assets:
    driver: local

.env file

SQUIDEX_FORCE_HTTPS=False
SQUIDEX_DOMAIN=research.squidex.com
SQUIDEX_ADMINEMAIL=admin@research.squidex.com
SQUIDEX_ADMINPASSWORD=Admin12345!@#$%
SQUIDEX_GITHUBCLIENT=
SQUIDEX_GITHUBSECRET=
SQUIDEX_GOOGLECLIENT=
SQUIDEX_GOOGLESECRET=
SQUIDEX_MICROSOFTCLIENT=
SQUIDEX_MICROSOFTSECRET=

Here is configuration printed in console

squidex_squidex_1  |   "logLevel": "Information",
squidex_squidex_1  |   "message": "Application started",
squidex_squidex_1  |   "environment": {
squidex_squidex_1  |     "aspnetcoreUrls": "http://+:80",
squidex_squidex_1  |     "assets:defaultpagesize": "200",
squidex_squidex_1  |     "assets:defaultpagesizegraphql": "20",
squidex_squidex_1  |     "assets:maxresults": "200",
squidex_squidex_1  |     "assets:maxsize": "5242880",
squidex_squidex_1  |     "assetstore:azureblob:connectionstring": "UseDevelopmentStorage=true",
squidex_squidex_1  |     "assetstore:azureblob:containername": "squidex-assets",
squidex_squidex_1  |     "assetstore:exposesourceurl": "False",
squidex_squidex_1  |     "assetstore:folder:path": "Assets",
squidex_squidex_1  |     "assetstore:ftp:password": "",
squidex_squidex_1  |     "assetstore:ftp:path": "Assets",
squidex_squidex_1  |     "assetstore:ftp:serverhost": "",
squidex_squidex_1  |     "assetstore:ftp:serverport": "21",
squidex_squidex_1  |     "assetstore:ftp:username": "",
squidex_squidex_1  |     "assetstore:googlecloud:bucket": "squidex-assets",
squidex_squidex_1  |     "assetstore:mongodb:bucket": "fs",
squidex_squidex_1  |     "assetstore:mongodb:configuration": "mongodb://localhost",
squidex_squidex_1  |     "assetstore:mongodb:database": "SquidexAssets",
squidex_squidex_1  |     "assetstore:type": "Folder",
squidex_squidex_1  |     "contents:defaultpagesize": "200",
squidex_squidex_1  |     "contents:defaultpagesizegraphql": "20",
squidex_squidex_1  |     "contents:maxresults": "200",
squidex_squidex_1  |     "contentscontroller:enablesurrogatekeys": "True",
squidex_squidex_1  |     "contentscontroller:maxitemsforsurrogatekeys": "200",
squidex_squidex_1  |     "dotnetRunningInContainer": "true",
squidex_squidex_1  |     "dotnetSystemGlobalizationInvariant": "true",
squidex_squidex_1  |     "email:notifications:existinguserbody": "Dear User,\r\n\r\n$ASSIGNER_NAME ($ASSIGNER_EMAIL) has invited you to join App $APP_NAME at Squidex Headless CMS.\r\n\r\nLogin or reload the Management UI to see the App.\r\n\r\nThank you very much,\r\nThe Squidex Team\r\n\r\n<<Start now!>> [$UI_URL]",
squidex_squidex_1  |     "email:notifications:existingusersubject": "[Squidex CMS] You have been invited to join App $APP_NAME",
squidex_squidex_1  |     "email:notifications:newuserbody": "Welcome to Squidex\r\nDear User,\r\n\r\n$ASSIGNER_NAME ($ASSIGNER_EMAIL) has invited you to join Project (also called an App) $APP_NAME at Squidex Headless CMS. Login with your Github, Google or Microsoft credentials to create a new user account and start editing content now.\r\n\r\nThank you very much,\r\nThe Squidex Team\r\n\r\n<<Start now!>> [$UI_URL]",
squidex_squidex_1  |     "email:notifications:newusersubject": "You have been invited to join Project $APP_NAME at Squidex CMS",
squidex_squidex_1  |     "email:smtp:enablessl": "True",
squidex_squidex_1  |     "email:smtp:password": "",
squidex_squidex_1  |     "email:smtp:port": "465",
squidex_squidex_1  |     "email:smtp:sender": "hello@squidex.io",
squidex_squidex_1  |     "email:smtp:server": "",
squidex_squidex_1  |     "email:smtp:username": "",
squidex_squidex_1  |     "etags:strong": "False",
squidex_squidex_1  |     "eventpublishers:alltorabbitmq:configuration": "amqp://guest:guest@localhost/",
squidex_squidex_1  |     "eventpublishers:alltorabbitmq:enabled": "False",
squidex_squidex_1  |     "eventpublishers:alltorabbitmq:eventsfilter": ".*",
squidex_squidex_1  |     "eventpublishers:alltorabbitmq:exchange": "squidex",
squidex_squidex_1  |     "eventpublishers:alltorabbitmq:type": "RabbitMq",
squidex_squidex_1  |     "eventstore:cosmosdb:configuration": "https://localhost:8081",
squidex_squidex_1  |     "eventstore:cosmosdb:database": "Squidex",
squidex_squidex_1  |     "eventstore:cosmosdb:masterkey": "C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==",
squidex_squidex_1  |     "eventstore:geteventstore:configuration": "ConnectTo=tcp://admin:changeit@localhost:1113; HeartBeatTimeout=500; MaxReconnections=-1",
squidex_squidex_1  |     "eventstore:geteventstore:prefix": "squidex",
squidex_squidex_1  |     "eventstore:geteventstore:projectionhost": "localhost",
squidex_squidex_1  |     "eventstore:mongodb:configuration": "mongodb://squidex_mongo",
squidex_squidex_1  |     "eventstore:mongodb:database": "Squidex",
squidex_squidex_1  |     "eventstore:type": "MongoDb",
squidex_squidex_1  |     "exposedconfiguration:version": "squidex:version",
squidex_squidex_1  |     "healthz:gc:threshold": "4096",
squidex_squidex_1  |     "home": "/root",
squidex_squidex_1  |     "hostname": "be21661e1f0e",
squidex_squidex_1  |     "identity:adminclientid": "",
squidex_squidex_1  |     "identity:adminclientsecret": "",
squidex_squidex_1  |     "identity:adminemail": "admin@research.squidex.com",
squidex_squidex_1  |     "identity:adminpassword": "Admin12345!@#$%",
squidex_squidex_1  |     "identity:allowpasswordauth": "True",
squidex_squidex_1  |     "identity:githubclient": "",
squidex_squidex_1  |     "identity:githubsecret": "",
squidex_squidex_1  |     "identity:googleclient": "",
squidex_squidex_1  |     "identity:googlesecret": "",
squidex_squidex_1  |     "identity:lockautomatically": "False",
squidex_squidex_1  |     "identity:microsoftclient": "",
squidex_squidex_1  |     "identity:microsoftsecret": "",
squidex_squidex_1  |     "identity:oidcauthority": "",
squidex_squidex_1  |     "identity:oidcclient": "",
squidex_squidex_1  |     "identity:oidcname": "OIDC",
squidex_squidex_1  |     "identity:oidcscopes:0": "email",
squidex_squidex_1  |     "identity:oidcsecret": "",
squidex_squidex_1  |     "identity:privacyurl": "http://research.squidex.com/privacy.html",
squidex_squidex_1  |     "identity:showpii": "true",
squidex_squidex_1  |     "languages:custom": "",
squidex_squidex_1  |     "letsencryptEmail": "admin@research.squidex.com",
squidex_squidex_1  |     "letsencryptHost": "research.squidex.com",
squidex_squidex_1  |     "logging:colors": "True",
squidex_squidex_1  |     "logging:human": "True",
squidex_squidex_1  |     "mode:isreadonly": "False",
squidex_squidex_1  |     "news:appname": "squidex-website",
squidex_squidex_1  |     "news:clientid": "squidex-website:default",
squidex_squidex_1  |     "news:clientsecret": "QGgqxd7bDHBTEkpC6fj8sbdPWgZrPrPfr3xzb3LKoec=",
squidex_squidex_1  |     "orleans:clustering": "MongoDB",
squidex_squidex_1  |     "orleans:gatewayport": "40000",
squidex_squidex_1  |     "orleans:siloport": "11111",
squidex_squidex_1  |     "path": "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
squidex_squidex_1  |     "plugins:0": "Squidex.Extensions.dll",
squidex_squidex_1  |     "rebuild:apps": "False",
squidex_squidex_1  |     "rebuild:assets": "False",
squidex_squidex_1  |     "rebuild:contents": "False",
squidex_squidex_1  |     "rebuild:indexes": "False",
squidex_squidex_1  |     "rebuild:rules": "False",
squidex_squidex_1  |     "rebuild:schemas": "False",
squidex_squidex_1  |     "rebuildApps": "true",
squidex_squidex_1  |     "robots:text": "User-agent: *\nAllow: /api/assets/*",
squidex_squidex_1  |     "store:mongodb:configuration": "mongodb://squidex_mongo",
squidex_squidex_1  |     "store:mongodb:contentdatabase": "SquidexContent",
squidex_squidex_1  |     "store:mongodb:database": "Squidex",
squidex_squidex_1  |     "store:mongodb:engine": "MongoDb",
squidex_squidex_1  |     "store:type": "MongoDb",
squidex_squidex_1  |     "translations:deeplauthkey": "",
squidex_squidex_1  |     "ui:hidenews": "False",
squidex_squidex_1  |     "ui:hideonboarding": "False",
squidex_squidex_1  |     "ui:map:googlemaps:key": "AIzaSyB_Z8l3nwUxZhMJykiDUJy6bSHXXlwcYMg",
squidex_squidex_1  |     "ui:map:type": "OSM",
squidex_squidex_1  |     "ui:onlyadminscancreateapps": "True",
squidex_squidex_1  |     "ui:redirecttologin": "False",
squidex_squidex_1  |     "ui:regexsuggestions:email": "^[a-zA-Z0-9.!#$%&ΓÇÖ*+\\/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:.[a-zA-Z0-9-]+)*$",
squidex_squidex_1  |     "ui:regexsuggestions:phone": "^\\(*\\+*[1-9]{0,3}\\)*-*[1-9]{0,3}[-. /]*\\(*[2-9]\\d{2}\\)*[-. /]*\\d{3}[-. /]*\\d{4} *e*x*t*\\.* *\\d{0,4}$",
squidex_squidex_1  |     "ui:regexsuggestions:slug": "^[a-z0-9]+(\\-[a-z0-9]+)*$",
squidex_squidex_1  |     "ui:regexsuggestions:url": "^(?:http(s)?:\\/\\/)?[\\w.-]+(?:\\.[\\w\\.-]+)+[\\w\\-\\._~:\\/?#%[\\]@!\\$&'\\(\\)\\*\\+,;=.]+$",
squidex_squidex_1  |     "ui:showinfo": "False",
squidex_squidex_1  |     "urls:baseurl": "http://research.squidex.com/",
squidex_squidex_1  |     "urls:enforcehttps": "False"
squidex_squidex_1  |   },
squidex_squidex_1  |   "app": {
squidex_squidex_1  |     "name": "Squidex",
squidex_squidex_1  |     "version": "3.1.0.0",
squidex_squidex_1  |     "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
squidex_squidex_1  |   },
squidex_squidex_1  |   "timestamp": "2019-07-30T14:15:13Z"
squidex_squidex_1  | }

I ran it inside docker-toolbox linux under windows using virtualbox provider.
It is started like successfuly no errors in console.
But!

when i have logged in.

i see in network tab in browser

ERROR Error: Uncaught (in promise): ErrorDto({"statusCode":500,"message":"Failed to load apps. Please reload.","details":[],"displayMessage":"Failed to load apps. Please reload."})
    at I (shims.js?8c008a90f0eb9d444be5:2)
    at I (shims.js?8c008a90f0eb9d444be5:2)
    at shims.js?8c008a90f0eb9d444be5:2
    at r.invokeTask (shims.js?8c008a90f0eb9d444be5:2)
    at Object.onInvokeTask (app.js?8c008a90f0eb9d444be5:2)
    at r.invokeTask (shims.js?8c008a90f0eb9d444be5:2)
    at n.runTask (shims.js?8c008a90f0eb9d444be5:2)
    at m (shims.js?8c008a90f0eb9d444be5:2)
    at u.invokeTask [as invoke] (shims.js?8c008a90f0eb9d444be5:2)
    at i (shims.js?8c008a90f0eb9d444be5:2)

And in UI i see

Failed to load apps. Please reload.

Reloading not helping at all.

in console last message

{
  "logLevel": "Error",
  "message": "Connection id \"0HLOKV1M50RDK\", Request id \"0HLOKV1M50RDK:00000002\": An unhandled exception was thrown by the application.",
  "eventId": {
    "id": 13,
    "name": "ApplicationError"
  },
  "connectionId": "0HLOKV1M50RDK",
  "traceIdentifier": "0HLOKV1M50RDK:00000002",
  "exception": {
    "type": "System.InvalidOperationException",
    "message": "IDX20803: Unable to obtain configuration from: '[PII is hidden]'.",
    "stackTrace": "   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)\n   at IdentityServer4.AccessTokenValidation.IdentityServerAuthenticationHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)\n   at Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(AuthorizationPolicy policy, HttpContext context)\n   at Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter.OnAuthorizationAsync(AuthorizationFilterContext context)\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()\n   at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)\n   at NSwag.AspNetCore.Middlewares.SwaggerDocumentMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Squidex.Web.Pipeline.EnforceHttpsMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/EnforceHttpsMiddleware.cs:line 28\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.LocalCacheMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/LocalCacheMiddleware.cs:line 30\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.RequestLogPerformanceMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/RequestLogPerformanceMiddleware.cs:line 33\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)"
  },
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "a1980dfb-29a8-496b-af9d-7cb7d9e725db",
    "requestPath": "/api/apps",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:27Z",
  "category": "Microsoft.AspNetCore.Server.Kestrel"
}

{
  "logLevel": "Information",
  "filters": {
    "costs": 0.0
  },
  "elapsedRequestMs": 0,
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "2f5adb12-ea4f-4856-94bb-70449ca0b029",
    "requestPath": "/build/index.html",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:45Z"
}

{
  "logLevel": "Error",
  "message": "Connection id \"0HLOKV1M50RDK\", Request id \"0HLOKV1M50RDK:00000003\": An unhandled exception was thrown by the application.",
  "eventId": {
    "id": 13,
    "name": "ApplicationError"
  },
  "connectionId": "0HLOKV1M50RDK",
  "traceIdentifier": "0HLOKV1M50RDK:00000003",
  "exception": {
    "type": "System.InvalidOperationException",
    "message": "Writing to the response body is invalid for responses with status code 304.",
    "stackTrace": "   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ThrowWritingToResponseBodyNotSupported()\n   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.WriteAsync(ReadOnlyMemory`1 data, CancellationToken cancellationToken)\n   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpResponseStream.WriteAsync(Byte[] buffer, Int32 offset, Int32 count, CancellationToken cancellationToken)\n   at Microsoft.AspNetCore.Http.HttpResponseWritingExtensions.WriteAsync(HttpResponse response, String text, Encoding encoding, CancellationToken cancellationToken)\n   at Microsoft.AspNetCore.Http.HttpResponseWritingExtensions.WriteAsync(HttpResponse response, String text, CancellationToken cancellationToken)\n   at Squidex.Areas.Frontend.Middlewares.IndexMiddleware.Invoke(HttpContext context) in /src/src/Squidex/Areas/Frontend/Middlewares/IndexMiddleware.cs:line 46\n   at Squidex.Pipeline.Squid.SquidMiddleware.Invoke(HttpContext context) in /src/src/Squidex/Pipeline/Squid/SquidMiddleware.cs:line 94\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Squidex.Web.Pipeline.EnforceHttpsMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/EnforceHttpsMiddleware.cs:line 28\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.LocalCacheMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/LocalCacheMiddleware.cs:line 30\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.RequestLogPerformanceMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/RequestLogPerformanceMiddleware.cs:line 33\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)"
  },
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "2f5adb12-ea4f-4856-94bb-70449ca0b029",
    "requestPath": "/build/index.html",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:45Z",
  "category": "Microsoft.AspNetCore.Server.Kestrel"
}

{
  "logLevel": "Information",
  "message": "Invoking IdentityServer endpoint: IdentityServer4.Endpoints.DiscoveryEndpoint for /.well-known/openid-configuration",
  "endpointType": "IdentityServer4.Endpoints.DiscoveryEndpoint",
  "url": "/.well-known/openid-configuration",
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "a4df187e-b683-4b45-97f2-20e6f7334ef7",
    "requestPath": "/.well-known/openid-configuration",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z",
  "category": "IdentityServer4.Hosting.IdentityServerMiddleware"
}

{
  "logLevel": "Information",
  "filters": {
    "userId": "5d4050adca78b700016285e1",
    "costs": 0.0
  },
  "elapsedRequestMs": 0,
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "a4df187e-b683-4b45-97f2-20e6f7334ef7",
    "requestPath": "/identity-server/.well-known/openid-configuration",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z"
}

{
  "logLevel": "Error",
  "message": "Exception occurred while processing message.",
  "eventId": {
    "id": 3
  },
  "exception": {
    "type": "System.InvalidOperationException",
    "message": "IDX20803: Unable to obtain configuration from: '[PII is hidden]'.",
    "stackTrace": "   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()"
  },
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "f8e741dd-5782-41d4-90e6-e5e8dd466261",
    "requestPath": "/apps",
    "requestMethod": "GET",
    "routeValues": {
      "area": "Api",
      "action": "GetApps",
      "controller": "Apps"
    }
  },
  "timestamp": "2019-07-30T14:24:46Z",
  "category": "Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler"
}

{
  "logLevel": "Information",
  "filters": {
    "costs": 0.0
  },
  "elapsedRequestMs": 2,
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "f8e741dd-5782-41d4-90e6-e5e8dd466261",
    "requestPath": "/api/apps",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z"
}

{
  "logLevel": "Error",
  "message": "Connection id \"0HLOKV1M50RDL\", Request id \"0HLOKV1M50RDL:00000004\": An unhandled exception was thrown by the application.",
  "eventId": {
    "id": 13,
    "name": "ApplicationError"
  },
  "connectionId": "0HLOKV1M50RDL",
  "traceIdentifier": "0HLOKV1M50RDL:00000004",
  "exception": {
    "type": "System.InvalidOperationException",
    "message": "IDX20803: Unable to obtain configuration from: '[PII is hidden]'.",
    "stackTrace": "   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)\n   at IdentityServer4.AccessTokenValidation.IdentityServerAuthenticationHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)\n   at Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(AuthorizationPolicy policy, HttpContext context)\n   at Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter.OnAuthorizationAsync(AuthorizationFilterContext context)\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()\n   at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)\n   at NSwag.AspNetCore.Middlewares.SwaggerDocumentMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Squidex.Web.Pipeline.EnforceHttpsMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/EnforceHttpsMiddleware.cs:line 28\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.LocalCacheMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/LocalCacheMiddleware.cs:line 30\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.RequestLogPerformanceMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/RequestLogPerformanceMiddleware.cs:line 33\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)"
  },
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "f8e741dd-5782-41d4-90e6-e5e8dd466261",
    "requestPath": "/api/apps",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z",
  "category": "Microsoft.AspNetCore.Server.Kestrel"
}

{
  "logLevel": "Information",
  "message": "Invoking IdentityServer endpoint: IdentityServer4.Endpoints.CheckSessionEndpoint for /connect/checksession",
  "endpointType": "IdentityServer4.Endpoints.CheckSessionEndpoint",
  "url": "/connect/checksession",
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "1d1354b9-9251-4fc1-96c3-068bc9298ca5",
    "requestPath": "/connect/checksession",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z",
  "category": "IdentityServer4.Hosting.IdentityServerMiddleware"
}

{
  "logLevel": "Information",
  "filters": {
    "userId": "5d4050adca78b700016285e1",
    "costs": 0.0
  },
  "elapsedRequestMs": 0,
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "1d1354b9-9251-4fc1-96c3-068bc9298ca5",
    "requestPath": "/identity-server/connect/checksession",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z"
}

{
  "logLevel": "Information",
  "filters": {
    "costs": 0.0
  },
  "elapsedRequestMs": 0,
  "app": {
    "name": "Squidex",
    "version": "3.1.0.0",
    "sessionId": "961a1e12-6e93-40b5-bede-7f9349a53cbd"
  },
  "web": {
    "requestId": "9431f890-dd50-4fd9-a4a2-c4206c30c47e",
    "requestPath": "/favicon.ico",
    "requestMethod": "GET"
  },
  "timestamp": "2019-07-30T14:24:46Z"
}

IDX20803: Unable to obtain configuration from: ‘[PII is hidden]’

PII is hidden event when show PII is set to True!


#2

Can you restart the application, then login and then give me the full logs for this flow?


#3

Here is logs from console starting from clear creation of squidex application with:

docker-compose down -v
docker-compose up

then after first failed login attempt Ctrl+C
and again

docker-compose up

tried to login again, logged in successfully but got the same error “Failed to load applications”

can’t paste here so much content.
Here is link to paste bin with full logs

https://pastebin.com/vMPZF27j


#4

I will check first why the ShowPII does not work.


#5

Can you try ‘dev’ tag instead of latest?


#6

sure, i will try it right now, and will get back to you


#7

great

now we see

squidex_squidex_1  | {
squidex_squidex_1  |   "logLevel": "Error",
squidex_squidex_1  |   "message": "Connection id \"0HLOL492QADMV\", Request id \"0HLOL492QADMV:00000003\": An unhandled exception was thrown by the application.",
squidex_squidex_1  |   "eventId": {
squidex_squidex_1  |     "id": 13,
squidex_squidex_1  |     "name": "ApplicationError"
squidex_squidex_1  |   },
squidex_squidex_1  |   "connectionId": "0HLOL492QADMV",
squidex_squidex_1  |   "traceIdentifier": "0HLOL492QADMV:00000003",
squidex_squidex_1  |   "exception": {
squidex_squidex_1  |     "type": "System.InvalidOperationException",
squidex_squidex_1  |     "message": "IDX20803: Unable to obtain configuration from: 'http://research.squidex.com/identity-server/.well-known/openid-configuration'.",
squidex_squidex_1  |     "stackTrace": "   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)\n   at IdentityServer4.AccessTokenValidation.IdentityServerAuthenticationHandler.HandleAuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationHandler`1.AuthenticateAsync()\n   at Microsoft.AspNetCore.Authentication.AuthenticationService.AuthenticateAsync(HttpContext context, String scheme)\n   at Microsoft.AspNetCore.Authorization.Policy.PolicyEvaluator.AuthenticateAsync(AuthorizationPolicy policy, HttpContext context)\n   at Microsoft.AspNetCore.Mvc.Authorization.AuthorizeFilter.OnAuthorizationAsync(AuthorizationFilterContext context)\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeFilterPipelineAsync()\n   at Microsoft.AspNetCore.Mvc.Internal.ResourceInvoker.InvokeAsync()\n   at Microsoft.AspNetCore.Builder.RouterMiddleware.Invoke(HttpContext httpContext)\n   at NSwag.AspNetCore.Middlewares.OpenApiDocumentMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Squidex.Web.Pipeline.EnforceHttpsMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/EnforceHttpsMiddleware.cs:line 28\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.LocalCacheMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/LocalCacheMiddleware.cs:line 30\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Squidex.Web.Pipeline.RequestLogPerformanceMiddleware.InvokeAsync(HttpContext context, RequestDelegate next) in /src/src/Squidex.Web/Pipeline/RequestLogPerformanceMiddleware.cs:line 33\n   at Microsoft.AspNetCore.Builder.UseMiddlewareExtensions.<>c__DisplayClass5_1.<<UseMiddlewareInterface>b__1>d.MoveNext()\n--- End of stack trace from previous location where exception was thrown ---\n   at Microsoft.AspNetCore.Builder.Extensions.MapMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Builder.Extensions.MapWhenMiddleware.Invoke(HttpContext context)\n   at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpProtocol.ProcessRequests[TContext](IHttpApplication`1 application)"
squidex_squidex_1  |   },
squidex_squidex_1  |   "app": {
squidex_squidex_1  |     "name": "Squidex",
squidex_squidex_1  |     "version": "3.0.0.0",
squidex_squidex_1  |     "sessionId": "c3c1331c-f021-493d-8c64-fbb89114a00a"
squidex_squidex_1  |   },
squidex_squidex_1  |   "web": {
squidex_squidex_1  |     "requestId": "69352d3f-7a46-45b5-912b-895867b7a27a",
squidex_squidex_1  |     "requestPath": "/api/apps",
squidex_squidex_1  |     "requestMethod": "GET"
squidex_squidex_1  |   },
squidex_squidex_1  |   "timestamp": "2019-07-30T19:15:30Z",
squidex_squidex_1  |   "category": "Microsoft.AspNetCore.Server.Kestrel"
squidex_squidex_1  | }
squidex_squidex_1  |

#8

a little bit earlier in logs

squidex_squidex_1  | {
squidex_squidex_1  |   "logLevel": "Error",
squidex_squidex_1  |   "message": "Exception occurred while processing message.",
squidex_squidex_1  |   "eventId": {
squidex_squidex_1  |     "id": 3
squidex_squidex_1  |   },
squidex_squidex_1  |   "exception": {
squidex_squidex_1  |     "type": "System.InvalidOperationException",
squidex_squidex_1  |     "message": "IDX20803: Unable to obtain configuration from: 'http://research.squidex.com/identity-server/.well-known/openid-configuration'.",
squidex_squidex_1  |     "stackTrace": "   at Microsoft.IdentityModel.Protocols.ConfigurationManager`1.GetConfigurationAsync(CancellationToken cancel)\n   at Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler.HandleAuthenticateAsync()"
squidex_squidex_1  |   },
squidex_squidex_1  |   "app": {
squidex_squidex_1  |     "name": "Squidex",
squidex_squidex_1  |     "version": "3.0.0.0",
squidex_squidex_1  |     "sessionId": "11ad41d1-423f-4ce3-9fe2-52616b12ee31"
squidex_squidex_1  |   },
squidex_squidex_1  |   "web": {
squidex_squidex_1  |     "requestId": "23b332b2-938e-48d9-908c-a78140db6868",
squidex_squidex_1  |     "requestPath": "/apps",
squidex_squidex_1  |     "requestMethod": "GET",
squidex_squidex_1  |     "routeValues": {
squidex_squidex_1  |       "area": "Api",
squidex_squidex_1  |       "action": "GetApps",
squidex_squidex_1  |       "controller": "Apps"
squidex_squidex_1  |     }
squidex_squidex_1  |   },
squidex_squidex_1  |   "timestamp": "2019-07-30T19:27:18Z",
squidex_squidex_1  |   "category": "Microsoft.AspNetCore.Authentication.JwtBearer.JwtBearerHandler"
squidex_squidex_1  | }

#9

ahahahah!!!
i got what was the problem!!!


#10

we need to describe this some where, because i didnt saw this step really needed!

what have i done to have it working

i thought why that error is happening

and thought about domain name printed in logs, so if it tried to access it and cant, then it could not access that DNS name and we need to link it inside container for local configurations!

i goes into ran docker container of squidex.

edited /etc/hosts, added

172.21.0.3      research.squidex.com

and everything start working


#11

Here is fixed docker-compose.yml content with ready to use configuration

version: '2.1'
services:
  squidex_mongo:
    image: mongo:latest
    volumes:
      - mongo:/data/db
    networks:
      - internal
    restart: unless-stopped

  squidex_squidex:
    image: "squidex/squidex:dev"
    ports:
      - "80:80"
    hostname: ${SQUIDEX_DOMAIN}
    environment:
      - URLS__BASEURL=${SQUIDEX_PROTOCOL}://${SQUIDEX_DOMAIN}/
      - URLS__ENFORCEHTTPS=${SQUIDEX_FORCE_HTTPS}
      - EVENTSTORE__MONGODB__CONFIGURATION=mongodb://squidex_mongo
      - STORE__MONGODB__CONFIGURATION=mongodb://squidex_mongo
      - IDENTITY__ADMINEMAIL=${SQUIDEX_ADMINEMAIL}
      - IDENTITY__ADMINPASSWORD=${SQUIDEX_ADMINPASSWORD}
      - IDENTITY__GOOGLECLIENT=${SQUIDEX_GOOGLECLIENT}
      - IDENTITY__GOOGLESECRET=${SQUIDEX_GOOGLESECRET}
      - IDENTITY__GITHUBCLIENT=${SQUIDEX_GITHUBCLIENT}
      - IDENTITY__GITHUBSECRET=${SQUIDEX_GITHUBSECRET}
      - IDENTITY__MICROSOFTCLIENT=${SQUIDEX_MICROSOFTCLIENT}
      - IDENTITY__MICROSOFTSECRET=${SQUIDEX_MICROSOFTSECRET}
      - IDENTITY__SHOWPII=true
      - IDENTITY__PRIVACYURL=http://research.squidex.com/privacy.html
      - REBUILD_APPS=true
      - LETSENCRYPT_HOST=${SQUIDEX_DOMAIN}
      - LETSENCRYPT_EMAIL=${SQUIDEX_ADMINEMAIL}
      - UI__ONLYADMINSCANCREATEAPPS=True
    depends_on:
      - squidex_mongo
    volumes:
      - squidex_assets:/app/Assets
    networks:
      - internal
    restart: unless-stopped
    
networks:
  internal:
    driver: bridge

volumes:
  mongo:
    driver: local
  squidex_assets:
    driver: local

========================================= HERE IS THE FIX!!! :slight_smile:

    hostname: ${SQUIDEX_DOMAIN}

#12

Key problem was i have launched it in docker-toolbox that is launched inside linux virtual machine under VirtualBox