I have a Kubernetes cluster running with containerd on the nodes. I don't have the ability to install things on the nodes. My task now is to deploy a pod which can use docker commands inside, for examle a docker pull or push. So docker should work in the container even though it is not installed on the host system. So I can't just mount the docker socket because it doesn't exist on the host. Is there a possibility?
Asked
Active
Viewed 914 times
1
-
1Did you try Docker-in-Docker: https://hub.docker.com/_/docker ? – A.B Nov 05 '22 at 11:46
-
I've thought about it too. However, this does not enable all docker functions. Mounting volumes etc. is not possible, for example – Tamino Elgert Nov 05 '22 at 12:16
-
Of course you can mount volumes with docker-in-docker. Although those volumes are mounted from you DIND host perspective: don't expect to attach kubernetes secrets or PVC, unless you mount them first in that DIND sidecar. – SYN Nov 06 '22 at 09:29
-
Hi, if you have resolved your issue as per the above comments; please post the answer. So, that it will be useful for other community members. – Abhijith Chitrapu Dec 21 '22 at 10:44
1 Answers
1
I was finally able to solve the problem with a dind container. This now runs as a second container in the pod. In order to be able to mount volumes, I mounted the corresponding volumes across both containers. Works without problems so far.

Tamino Elgert
- 83
- 1
- 1
- 9
-
Do you mean that you solved it by running a container with `privileged: true`? – Shaked KO Dec 27 '22 at 13:24
-
yes, the dind container runs with securityContext: privileged: true – Tamino Elgert Jan 11 '23 at 14:28