Are there maintenance conflicts withe active users?

Regarding the upgrading (new backend download) process for a site.

In the shared medical billing & scheduling databases where I’ve had administrator duties, it had to have no active users during any maintenance. Yet it only had tools to identify who was active. We had to visit those workstations log out anyone currently active, tape a note to the monitor and run back to the server to disable log-in before (hopefully before!) someone else logged in. This was a constant hassle before doing upgrades, data repairs or backups.

Is that a requirement with Gramps Web? If so, can you kick out users remotely and disable access?

In short, no, there is no need for a maintenance mode.

If the backend goes down for whatever reason, users will see error messages or a “cannot connect to server” status message in the browser, but it will go back to normal once the server is reachable again.

Upgrades & downtimes is one of the main benefits of using docker. When using docker, the new image is pulled in the background and the new version is already installed in it, so there is no need to shut down the backend to download and install a new version. The only downtime is a couple of seconds while restarting the container. If a user is unlucky enough to send a request in this instance, there will be an error message, that’s all. Database corruption will not occur as the process is shut down gracefully and even if not, everything is wrapped in ACID transactions.

When using a larger deployment for many users, I would use Kubernetes, where there is practically no downtime at all. Multiple containers can be started and you always route to one which is running.