aboutsummaryrefslogtreecommitdiff
path: root/content/posts/2020-12-28-k8s-private-registry.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/posts/2020-12-28-k8s-private-registry.md')
-rw-r--r--content/posts/2020-12-28-k8s-private-registry.md56
1 files changed, 56 insertions, 0 deletions
diff --git a/content/posts/2020-12-28-k8s-private-registry.md b/content/posts/2020-12-28-k8s-private-registry.md
new file mode 100644
index 0000000..6706da7
--- /dev/null
+++ b/content/posts/2020-12-28-k8s-private-registry.md
@@ -0,0 +1,56 @@
+---
+title: "K8S private gitlab registry using podman"
+date: 2021-12-28
+tags: ['kubernetes', 'linux', 'podman', 'gitlab', 'k3s']
+---
+
+This is based on [Log in to Docker
+Hub](https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/).
+It is just a bit different to use podman
+
+First we should take a look at podman-login man page:
+
+``` bash
+man podman login
+```
+
+It will give some valueable information like the location of auth.json
+file. Now we can login using podman:
+
+``` bash
+podman login registry.gitlab.com
+```
+
+Then check the `auth.json` file located at
+`${XDG_RUNTIME_DIR}/containers/auth.json` (as described by the manual).
+
+``` bash
+cat "${XDG_RUNTIME_DIR}/containers/auth.json"
+```
+
+It will print your auth config:
+
+``` json
+{
+ "auths": {
+ "registry.gitlab.com": {
+ "auth": "..."
+ }
+ }
+}
+```
+
+Now copy that file over to the server and register it in k8s with the
+following command:
+
+``` bash
+kubectl create secret generic regcred \
+ --from-file=.dockerconfigjson=auth.json \
+ --type=kubernetes.io/dockerconfigjson
+```
+
+Once you have created you can list by `kubectl get secret`:
+```
+NAME TYPE DATA AGE
+regcred kubernetes.io/dockerconfigjson 1 53s
+```