Comment aller dans le shell d'un conteneur Docker ? J'espère que déjà, dans cette première phrase, il n'y a pas de faute, et, que l'on dit bien " Aller dans le shell d'un conteneur Docker ".« Aller » peut laisser penser que l'instance shell est déjà lancée dans le docker alors que ce n'est pas le cas : on _exécute_ simplement un shell dans le docker. Je pense que la bonne façon de dire serait donc plutôt : « _exécuter_ un shell _interactif_ dans un container docker. » ;) Exécuter un shell interactif dans un container Docker docker exec -ti <nom ou ID du container> bash docker exec -ti <nom ou ID du container> /bin/sh docker exec -ti <nom ou ID du container> <commande à exécuter> Ici, l'id de status me sert à me connecter au shell : docker exec -it 8d876406448a bash Le soucis que je rencontre, c'est que l'id de status n'est pas toujours le même, si je ne me trompe pas. Ainsi, si je partage une machine virtuelle avec une autre personne, puis, que le conteneur Docker sauvegardé est réimporté, nous n'aurons pas le même id de status. Cela ne me permet pas, de ce fait, d'écrire un script, pour me retrouver directement connecté au Shell de mon conteneur. Comment faire pour récupérer l'id de status automatiquement, pour pouvoir lancer la commande suivante depuis un script : docker exec -it IDSTATUS bashAu moment où ton docker est lancé, tu peux indiquer un nom à ton instance : docker run --name machintruc l-image-docker-bidul Et, sauf erreur, tu peux utiliser le nom que tu as donné à ton instance : docker exec -it machintruc bash J'ignore comment ton docker est lancé exactement mais si tu veux que l'instance soit identifiable facilement c'est de ce côté qu'il faut chercher à mon avis. Après relecture de mes notes, je pense que tu as parfaitement raison. Je vais tester au plus tôt, j'ai modifié mes notes avec ta proposition de commande : docker exec -it NomConteneur bash NB : Je me rend compte que ma question n'était pas en rapport avec Debian, mais, avec l'usage du shell. Merci pour ton retour. |