<p>I'm deploying some microservices in gcp kubernentes. I don't know if I need to pay to download images from docker hub by network stuff.</p>

<ol>
<li>How it could affect my billing if I use docker hub instead of google image registry?</li>
<li>Could I save money if I use image registry on gcp instead of docker hub?</li>
<li>Could I need to pay more to use docker hub instead gcp image registry?</li>
</ol>

<p>I don't know what image registry to use. </p>

<p>Thanks!</p>

<p>Container Registry uses <a href="https://cloud.google.com/container-registry/pricing#storage" rel="nofollow noreferrer">Cloud Storage under the hood</a> to store your images, which <a href="https://cloud.google.com/storage/pricing#storage-pricing" rel="nofollow noreferrer">publishes its pricing info in this table</a>. <strong>You can store 5GB for free, and another 100GB of storage would cost you $2.60/month.</strong> Either way your costs are incredibly low. I'd recommend storing in GCR because your deployments will be faster, management will be simpler with everything in one place, and you can easily enable <a href="https://cloud.google.com/container-registry/docs/tutorial-vulnerability-scan" rel="nofollow noreferrer">Vulnerability Scanning</a> on your images.</p>

<blockquote>
  <p>How it could affect my billing if I use docker hub instead of google image registry?</p>
</blockquote>

<p>Google Cloud <a href="https://cloud.google.com/compute/network-pricing#general_network_pricing" rel="nofollow noreferrer">does not charge for ingress traffic</a>. That means there is no cost to downloading an image from Docker hub. You are downloading over the public net, however, so expect <code>push</code> and <code>pull</code> to/from GCP to take longer than if you stored images in GCR.</p>
