J'utilise une bibliothèque tierce qui crée des conteneurs dockers frères via:
docker run -d /var/run/docker.sock:/var/run/docker.sock ...
J'essaie de créer un déploiement Kubernetes à partir du conteneur ci-dessus, mais j'obtiens actuellement:
Impossible de se connecter au démon Docker sous unix: ///var/run/docker.sock. Le démon docker est-il en cours d'exécution?
Cela est attendu car je ne déclare pas en /var/run/docker.sock
tant que volume dans le déploiement yaml.
Le problème est que je ne sais pas comment faire ça. Est-il possible de monter en /var/run/docker.sock
tant que volume dans un yaml de déploiement?
Sinon, quelle est la meilleure approche pour exécuter les conteneurs frères et sœurs docker à partir d'un déploiement / pod Kubernetes?
Bien qu'il s'agisse d'une solution de travail (je l'utilise moi-même), il y a quelques inconvénients à exécuter Docker dans un pod Kubernetes en montant
/var/run/docker.sock
Surtout le fait que vous travaillez avec des conteneurs Docker hors du contrôle de Kubernetes.
Une autre solution suggérée que j'ai trouvée consiste à utiliser un conteneur de side-car dans votre pod. Voir Un cas pour Docker-in-Docker sur Kubernetes . Il y a deux parties où la solution proposée est dans la partie 2 .
J'espère que ça aide.
la source