title: Deploy new image in Docker Compose stack without downtime
body: <p>We have a multi-container application, which uses a <a href="https://smartbear.com/learn/api-design/what-are-microservices/" rel="noreferrer">microservices</a> architecture, running in Docker Compose. </p>
  
  <p>When I make code changes to the web app, for example, I need to rebuild the image with new code, then run it again in my compose stack, without any downtime.</p>
  
  <p>Here is the current sequence of events that we are using:</p>
  
  <ol>
  <li>Make changes to app code </li>
  <li>Rebuild image </li>
  <li>Push image(to docker hub)</li>
  <li><code>docker-compose down</code> </li>
  <li><code>docker-compose up</code></li>
  </ol>
  
  <p>After running <code>docker-compose down</code>, all apps go down. Then <code>docker-compose up</code> brings the whole stack back up. </p>
  
  <p>Is there a way to redeploy individual images in Docker Compose without any downtime, and without bringing down the entire application stack?</p>