aboutsummaryrefslogtreecommitdiff
path: root/content/posts/2021-12-26K8S_private_gitlab_registry_using_podman.html
blob: 43b8245e2fd9b37cb4a1c028241c5313d7ac5ae0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<section>
    <h2>K8S private gitlab registry using podman</h2>
    <p>
        This is based on <a
            href="https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/">Log in to
        Docker Hub</a>. It is just a bit different to use podman.
    </p>
    <p>
        First we should take a look at podman-login man page:
<pre><code>man podman login</code></pre>
    </p>
    <p>
        It will give some valueable information like the location of auth.json file. Now we can login using podman:
<pre><code>podman login registry.gitlab.com</code></pre>
    </p>
    <p>Then check the <code>auth.json</code> file located at <code>${XDG_RUNTIME_DIR}/containers/auth.json</code> (as described
        by the manual). It will contain your auth config:
<pre><code>{
	"auths": {
		"registry.gitlab.com": {
			"auth": "..."
		}
	}
}</code></pre>
    </p>
    <p>
        Now copy that file over to the server and register it in k8s with the following command:
<pre><code>
kubectl create secret generic regcred \
    --from-file=.dockerconfigjson=auth.json \
    --type=kubernetes.io/dockerconfigjson</code></pre>
    </p>
    <p>
        Once you have created you can list by kubectl get secret:
<pre><code>
NAME     TYPE                                  DATA   AGE
regcred  kubernetes.io/dockerconfigjson        1      53s</code></pre>
    </p>
</section>