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, 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, Fetch can take an init object containing many custom settings that you might want to apply to the request, this includes an option called "headers". The "headers" option takes a Header object. This object allows you to configure the headers you want to add to your request. By adding pragma: no-cache and a cache-control: no-cache to your header you will force the browser to check the server to , 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 , This Stack Overflow page explains how to set HTTP headers for cache control in web development, including examples and best practices., [NoCache] public class ControllerBase : Controller, IControllerBase You can also decorate some of the actions with this attribute if you need them to be non-cacheable, instead of decorating the whole controller..