<p>I am getting below error</p>
<pre><code>Running with gitlab-runner 14.0.0 (3b6f852e)
  on gitlab-runner-artefactory-gitlab-runner-68f94fd89-pnd6g DaN3U_2T
Preparing the &quot;kubernetes&quot; executor
00:00
Using Kubernetes namespace: sai
Using Kubernetes executor with image aie-docker-dev-mydockerrepo/python:3.6-strech ...
Using attach strategy to execute scripts...
Preparing environment
00:06
Waiting for pod sai/runner-dan3u2t-project-9879-concurrent-0zdmgf to be running, status is Pending
Waiting for pod sai/runner-dan3u2t-project-9879-concurrent-0zdmgf to be running, status is Pending
    ContainersNotReady: &quot;containers with unready status: [build helper svc-0]&quot;
    ContainersNotReady: &quot;containers with unready status: [build helper svc-0]&quot;
WARNING: Failed to pull image with policy &quot;&quot;: image pull failed: Back-off pulling image &quot;aie-docker-dev-mydockerrepo/python:3.6-strech&quot;
ERROR: Job failed (system failure): prepare environment: waiting for pod running: pulling image &quot;aie-docker-dev-mydockerrepo/python:3.6-strech&quot;: image pull failed: Back-off pulling image &quot;aie-docker-dev-mydockerrepo/python:3.6-strech&quot;. Check https://docs.gitlab.com/runner/shells/index.html#shell-profile-loading for more information
</code></pre>
<p>I am trying to run job using gitlab runner. What could be the possible reason for failure ? I figured out ImagePullSecret could be set but I am not sure where to use that ? Anyone having idea ?</p>

Laster
<p>According to:
<a href="https://docs.gitlab.com/runner/install/kubernetes.html#using-an-image-from-a-private-registry" rel="nofollow noreferrer">https://docs.gitlab.com/runner/install/kubernetes.html#using-an-image-from-a-private-registry</a></p>
<p>If your Docker image is in a private repository, you need to create an image pull secret in the Kubernetes namespace where your job is running.</p>
<p>You can create an image pull secret using the following command</p>
<pre><code>kubectl create secret docker-registry &lt;SECRET_NAME&gt; \
  --namespace &lt;NAMESPACE&gt; \
  --docker-server=&quot;https://&lt;REGISTRY_SERVER&gt;&quot; \
  --docker-username=&quot;&lt;REGISTRY_USERNAME&gt;&quot; \
  --docker-password=&quot;&lt;REGISTRY_PASSWORD&gt;&quot;
</code></pre>
<p>Then configure the <code>image_pull_secrets</code> parameter in the Kubernetes executor config.toml settings.</p>
<pre><code>[[runners]]
  [runners.kubernetes]
    image_pull_secrets = [&quot;&lt;SECRET_NAME&gt;&quot;]
</code></pre>
<p>Or if you use helm, <code>imagePullSecrets</code></p>
<pre><code>runners:
  imagePullSecrets: [your-image-pull-secret]
</code></pre>
<p>Keep in mind that in both cases you need to pass an array of secrets, even if you have only one.</p>
