<p>To minimize network problems, I created a <code>local repository</code>, mirroring <code>Docker Hub</code>. When applying a deployment, my local registry goes down. Is it possible to automatically change repository source to Docker Hub instead of my local repository? Applying then, redundancy.</p>

<p>Like:</p>

<pre><code>...
containers:
- name: webserver
  image-1: registry.mydomain/nginx:latest
  image-2: nginx:latest
  imagePullPolicy: Always
...
</code></pre>

<p>The kubernetes pod spec <a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.17/#container-v1-core" rel="nofollow noreferrer">doesn't include the functionality to specify multiple container images</a>, but the underlying container runtime can often be configured to do that.</p>
<h3>Docker</h3>
<p>When a specific prefix domain is not provided for an image, The <code>docker.io</code> registry is the first place Docker looks for an unscoped image. This is why <code>docker pull mysql</code> works. Docker has a <code>registry-mirrors</code> setting to modify this behaviour.</p>
<p>In <code>daemon.json</code> add:</p>
<pre><code>{
  &quot;registry-mirrors&quot;: [ &quot;something.local&quot; ],
}
</code></pre>
<p>This will cause Docker to look for non scoped images on <code>something.local</code> first,  then <code>docker.io</code>.</p>
