You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For the blue-green deployment I need to change labels of my services whenever I switch from blue to green. So I went ahead and created two compose files: production-labels.yml and preparing-labels.yml. There's also "base" deploy file: deploy-base.yml.
The idea is that as I switch blue stack from "preparing" to "production" and green stack from "production" to "preparing", services in these two stack are not restarted. I checked it with docker service update --label-rm preparing --label-add production=true, services are fine.
The problem I'm facing is that it doesn't seem possible to do the same with docker deploy -c command. For example, if I change anything in deploy-base.yml, e.g. change image tag, when I'm doing the switch I can't preserve old image tags when applying new labels.
So here I am, asking for a feature to be able to do incremental stack deploy. That is, if I provide a compose file, only options that are present in this file are applied to current deployment.
Alternatively, I would be fine with a feature that can "dump" current stack into a generated compose file.
The text was updated successfully, but these errors were encountered:
Unfortunately, it's written in Clojure, so can't be reused in docker. But I think it's a reasonable feature to do "partial" docker stack deploy. For example, there's --prune flag that removes services not included in current compose file. Maybe there's (would be) a similar --override flag which doesn't touch options not included in compose file.
For array and map options there's also functionality needed to specify whether override or extend options. As I understand there's only "extend" currently.
Description
For the blue-green deployment I need to change labels of my services whenever I switch from blue to green. So I went ahead and created two compose files:
production-labels.yml
andpreparing-labels.yml
. There's also "base" deploy file:deploy-base.yml
.The idea is that as I switch blue stack from "preparing" to "production" and green stack from "production" to "preparing", services in these two stack are not restarted. I checked it with
docker service update --label-rm preparing --label-add production=true
, services are fine.The problem I'm facing is that it doesn't seem possible to do the same with
docker deploy -c
command. For example, if I change anything indeploy-base.yml
, e.g. change image tag, when I'm doing the switch I can't preserve old image tags when applying new labels.So here I am, asking for a feature to be able to do incremental stack deploy. That is, if I provide a compose file, only options that are present in this file are applied to current deployment.
Alternatively, I would be fine with a feature that can "dump" current stack into a generated compose file.
The text was updated successfully, but these errors were encountered: