title: Docker ADD vs VOLUME
body: <p>I am learning Docker and I have doubts about when and where to use <code>ADD</code> and <code>VOLUME</code>. Here is what I think both of these do:</p>
  
  <h2>ADD</h2>
  
  <p>Copy files to the image at build time. The image has all the files so you can deploy very easily.  On the other hand, needing to build every time doesn't look like a good idea in development because building requires the developer to run a command to rebuild the container; additionally, building the container can be time-consuming.</p>
  
  <h2>VOLUME</h2>
  
  <p>I understand that using <code>docker run -v</code> you can mount a host folder inside your container, this way you can easily modify files and watch the app in your container react to the changes. It looks great in development, but I am not sure how to deploy my files this way.</p>