Rancher upgrade service - download before restart

I have some servers managed by rancher. Some of them have huge traffic and their internet speed is suffering. Right now, if I want to upgrade one of the running services, rancher stops it then downloads the new version and only after that it starts the new one. This leaves me with downtimes of 10-20 minutes on some of the hosts while others pick the upgrade pretty fast. Needless to say, my customers are complaining.

I was wondering if there’s an option to pull the new images without stopping the containers and do the restart after the images were successfully pulled from the registry.

There’s also the option to start before stopping but my containers run with --net=host listening on a public port and I’m pretty sure that will lead to a conflict.

Any ideas?

We do this for similar reasons - checkout the rancher-compose pull command. For example:

rancher-compose -p some_name -f docker-compose.yml -r rancher-compose.yml pull

you should also enable start before stopping for these public facing services

Isn’t that going to rise a conflict since they are public facing listening on a host port with --net=host?

Sorry I didn’t catch that part. Here is what I’m doing.

Google Cloud Load balancer points at 3 nodes. Each node runs a rancher loadbalancer + each public facing service. Deploying with stop before start create a double redundant zero downtime scenario.