Zero downtime upgrade with a docker setup


I’m just wondering if there is a possibility to upgrade gitlab in a docker setup without downtime.
I guess with a reverse proxy an upgrade would just be:

  1. pull the new image
  2. spawn a container with the new image
  3. adjust the reverse proxy to forward requests to the new container once it is fully operational.
  4. stop and remove the container with the old image

A likely issue to me seems to be that the database is not run in a separate container. Therefore I would appreciate feedback from someone who might have more insight whether a zero downtime upgrade is possible with docker.