When I “./launcher rebuild app” my Discourse and try to enter to my Discourse forum, its shows “502 Bad Gateway” error.
I know it’s just 10 minutes but I think it’s more professional to show to our users a pretty error message when we update our Discourse.
P.S: sorry for my lame english. working on it!
For things like this, we maintain a fully separate one-page website with the same valid SSL certs as our app/site.
When it’s time for maintenance, we point DNS at that server, do our thing, and point it back. Requires a short TTL to make it worthwhile, but that works for us.
I suppose something like that could be done in a separate docker setup on the same host?
I suppose that the inner NGINX could have a 502 rule to serve a page like this:
<!DOCTYPE html> <html> <head> <meta http-equiv="refresh" content="5"> </head> <body> The Discourse server is starting up, please wait..... </body> </html>
Because if you can see that page at all, it means that the container is running and Unicorn is unreachable.
Yes why don’t you submit that change. Good idea!
Does not solve much, the issue is that the container must be stopped during rebuild of standalone
In my use case, that would help a lot: I use nginx running on the host since I serve multiple subdomains. This already shows a nice message while the container is down – but
bad gateway still leaks through while the conainer starts up.
This is a band-aid at best.
If NGINX is serving a 502 at all then any customers using services such as Cloudflare will never see that error, they’ll see the 521 error from Cloudflare.