<p>I have a case where we have to patch the docker image in k8s node and retag it to start over the old one. This process ain't so easy and obvious, because I have several nodes.</p>
<p>Therefore, could I do retag process only on one node and then copy a new image to other nodes? If there is a possibility to do so, then should I delete the old image before copying retagged one?</p>

Mykhailo Tkachenko
<h2><strong>Best Practice:</strong></h2>
<blockquote>
<p><strong>could I do retag process only on one node and then copy a new image to other nodes?</strong></p>
</blockquote>
<p>Moreover you can create a private repo registry and push/pull your docker images from there.</p>
<p>So make change in your image, push to repo, now all nodes will able to pull the new image.</p>
<p><strong>Ref:</strong> <a href="https://www.cloudsigma.com/setting-up-a-private-docker-registry-on-ubuntu-18-04/" rel="nofollow noreferrer">Setting Up a Private Docker Registry on Ubuntu 18.04</a></p>
<blockquote>
<p>then should I delete the old image before copying retagged one</p>
</blockquote>
<p>No, use image versioning.</p>
<p>Lets assume you are using image <strong>MyImage:1.1</strong>, now you make some changes and create new image with version 1.2, so your image will be <strong>MyImage:1.2</strong></p>
<p>Now in your deployment file, change your image name to <strong>MyImage:1.2</strong>, and create the deployment. Now your deployment will upgraded with new image.</p>
<p>You can use <a href="https://kubernetes.io/docs/tutorials/kubernetes-basics/update/update-intro/" rel="nofollow noreferrer">Rolling Update</a> for the upgrade strategy for zero downtime.</p>
<h2><strong>Moral :</strong></h2>
<p>In new IT world, we mostly work in multiple clusters with many nodes. We have regular changes or customization as per the client demand or business met. We cant just make change in single node and then pushing it to everyone 1-1, trust me it is very hectic.</p>
