gabrielgio.me @ eace42e7113857145a72fe461abee8b2ca748c55

 1---
 2title: "K8S private gitlab registry using podman"
 3date: 2021-12-28
 4tags: ['kubernetes', 'linux', 'podman', 'gitlab', 'k3s']
 5---
 6
 7This is based on [Log in to Docker
 8Hub](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/).
 9It is just a bit different to use podman
10
11First we should take a look at podman-login man page:
12
13``` bash
14man podman login
15```
16
17It will give some valueable information like the location of auth.json
18file. Now we can login using podman:
19
20``` bash
21podman login registry.gitlab.com
22```
23
24Then check the `auth.json` file located at
25`${XDG_RUNTIME_DIR}/containers/auth.json` (as described by the manual).
26
27``` bash
28cat "${XDG_RUNTIME_DIR}/containers/auth.json"
29```
30
31It will print your auth config:
32
33``` json
34{
35    "auths": {
36        "registry.gitlab.com": {
37            "auth": "..."
38        }
39    }
40}
41```
42
43Now copy that file over to the server and register it in k8s with the
44following command:
45
46``` bash
47kubectl create secret generic regcred \
48    --from-file=.dockerconfigjson=auth.json \
49    --type=kubernetes.io/dockerconfigjson
50```
51
52Once you have created you can list by `kubectl get secret`:
53```
54NAME    TYPE                           DATA AGE
55regcred kubernetes.io/dockerconfigjson 1    53s
56```