I have build a Docker image from a Docker file using the below command. $ docker build -t u12_core -f u12_core . When I am trying to rebuild it with the same command, it's using the build cache li, @Anshul No, must-revalidate and no-cache have different meaning for fresh responses: If a cached response is fresh (i.e, the response hasn't expired), must-revalidate will make the proxy serve it right away without revalidating with the server, whereas with no-cache the proxy must revalidate the cached response regardless of freshness. Source: "HTTP - The Definitive Guide", pages 182-183., I don't find get the practical difference between Cache-Control:no-store and Cache-Control:no-cache. As far as I know, no-store means that no cache device is allowed to cache that response. In the, This Stack Overflow page explains how to set HTTP headers for cache control in web development, including examples and best practices., Ok, even if you aren't using express, what essentially needed is to set the nocache headers. I'm adding the headers in a reusable middleware, otherwise you can set those headers in any way that works., Similar to the NoCache option. Clients receive a Cache-Control: no-cache directive but the document is cached on the origin server. Equivalent to ServerAndNoCache. ServerAndNoCache Applies the settings of both Server and NoCache to indicate that the content is cached at the server but all others are explicitly denied the ability to cache the .