Estoy usando una biblioteca de terceros que crea contenedores acoplables hermanos a través de:
docker run -d /var/run/docker.sock:/var/run/docker.sock ...
Estoy tratando de crear una implementación de Kubernetes del contenedor anterior, pero actualmente obtengo:
No se puede conectar al demonio Docker en unix: ///var/run/docker.sock. ¿Se está ejecutando el Docker Daemon?
Esto se espera porque no estoy declarando /var/run/docker.sock
como un volumen en la implementación yaml.
El problema es que no sé cómo hacer esto. ¿Es posible montar /var/run/docker.sock
como volumen en un despliegue yaml?
Si no es así, ¿cuál es el mejor enfoque para ejecutar contenedores de hermanos Docker desde una implementación / pod de Kubernetes?
Aunque esta es una solución que funciona (la uso yo mismo), existen algunos inconvenientes para ejecutar Docker en un pod Kubernetes montando
/var/run/docker.sock
Principalmente el hecho de que está trabajando con contenedores Docker fuera del control de Kubernetes.
Otra solución sugerida que encontré es usar un contenedor lateral en su cápsula. Vea un caso para Docker-in-Docker en Kubernetes . Hay dos partes donde la solución propuesta está en la parte 2 .
Espero que esto ayude.
fuente