Extraire une image
docker image pull alpine
Voir cette image est là
docker image ls OR just docker images
voir ce qu'il y a à l'intérieur de l'alpin
docker run alpine ls -al
Maintenant, votre question est de savoir comment rester avec le shell
docker container run -it alpine /bin/sh
Vous êtes dans la ligne de commande du script shell. Certaines distributions peuvent avoir un shell bash.
docker exec -it 5f4 sh
/ # (<-- you can run linux command here!)
À ce stade, vous pouvez utiliser la ligne de commande d'Alpine et faire
ls -al
tapez exit pour sortir - Vous pouvez l'exécuter en mode détaché et il continuera à fonctionner.
Avec la commande exec, nous pouvons nous reconnecter
docker container run -it -d alpine /bin/sh
vérifiez qu'il est UP et copiez les 2 à 3 PREMIERS chiffres de l'ID du conteneur
docker container ls
connectez-vous avec la commande exec
docker exec -it <CONTAINER ID or just 2-3 digits> sh
Vous devrez ARRÊTER sinon il continuera à fonctionner.
docker stop <CONTAINER ID>
Vous devez utiliser docker start
, qui vous permet de démarrer un conteneur arrêté. Si vous n'avez pas nommé votre conteneur, vous devrez obtenir son nom/identifiant en utilisant docker ps
.
Par exemple,
$docker ps
CONTAINER ID IMAGE COMMAND
4c01db0b339c alpine bash
$docker start -i -a 4c01db0b339c
Le conteneur vit tant que le processus de commande d'exécution spécifié est toujours en cours d'exécution. Lorsque vous spécifiez d'exécuter /bin/sh
, une fois que vous quittez, le processus sh mourra et votre conteneur aussi.
Si vous souhaitez que votre conteneur continue de fonctionner, vous devez maintenir le processus à l'intérieur en cours d'exécution. Pour votre cas (je ne suis pas sûr de ce que vous voulez obtenir, je suppose que vous ne faites que tester), ce qui suit le fera fonctionner
docker run -d --name alpine alpine tail -f /dev/null
Ensuite, vous pouvez sh
dans le conteneur en utilisant
docker exec -it alpine sh