22- Les commandes de docker: conteneurs
Arrêter / démarrer / tuer / redémarrer un conteneur
$ docker stop / start / kill / restart <nom_conteneur> ou
Exporter l’ensemble du système de fichier d’un conteneur dans une archive TAR
$ docker export <nom_conteneur> ou
Afficher les ports réseaux exposés par un conteneur
$ docker port <nom_conteneur> ou
Afficher les changements effectués sur les fichiers d’un conteneur (A=Ajout, D=Delete, C=Modif)
$ docker run -it –name test_diffdebian/bin/bash
root@c7d328b087eb:/# apt update && apt -y upgrade
$ docker diff test_diff
C /root
A /root/.bash_history
C /tmp
C /var/lib/apt/lists
A /var/lib/apt/lists/deb.debian.org_debian_dists_stretch-updates_InRelease
Commiter un conteneur pour obtenir une nouvelle image :
Une solution pour “persister” les données ou les configurations consiste à commiterle conteneur pour créer une nouvelle image (clairement pas une bonne pratique).
Dans cet exemple, l’image est associée à l’utilisateur “levasbr1” correspondant à un compte sur le docker-hub pour faciliter la publication des images sur la plate-forme public.
$ docker commit test_diff
$ docker commit test_diff levasbr1/debian:latest
Pousser une image locale sur une registry public :
il faut disposer d’un compte sur docker-hub ensuite se loguer avec le compte (identifiant , mot de passe ).
$ docker login -u identifiant-docker-hub –p pwd
Ensuite , taguer l’image avec docker tag et pousser avec docker push :
Exemple : j’ai un répertoire avec le nom : formationsDocker: https://hub.docker.com/orgs/formationsDocker
$docker tag debian:latestformationsDocker/debian:latest
$docker push formationsDocker/debian:latest
Exécuter une commande dans un conteneur démarré
Dans l’exemple, on lance un conteneur nginxen mode daemon et on utilise la commande docker exec pour s’y connecter :
$ docker run -d –nametest_execnginx
$ docker exec-ittest_exec/bin/bash
root@331e1e904e1e:/# ls
bin boot dev etchome lib lib64 media mnt optproc root run sbin
root@331e1e904e1e:/# exit
exit
Supprimer un conteneur :
$ docker rmtest_attach
Supprimer plusieurs conteneurs en utilisant les CID abrégés :
$ docker rm331 c7d
Ici l’option -p permet d’exposer le port 80 du conteneur et de joindre le conteneur sur le port 8006 et l’adresse IP de l’hôte
$ docker run -d -p 8006:80 nginx
Copier des fichiers depuis ou à destination d’un conteneur :
Dans cet exemple, on récupère un fichier depuis un conteneur puis on le réimporte après modification.
$ docker run -d -p 8001:80 –name test_cpnginx
On copie le fichier index.html depuis le conteneur sur la machine hôte
$ docker cptest_cp:/usr/share/nginx/html/index.html.
Attention au “.” en fin de ligne qui représente le répertoire courant
On remplace le contenu du fichier :
$ echo “Hello World” > index.html
On copie le fichier modifié depuis l’hôte vers le conteneur
$ docker cp index.html test_cp:/usr/share/nginx/html/
Afficher des informations sur les conteneurs exécutés par Docker (équivalent à un top sous Linux)
$ docker stats
CONTAINER CPU % MEM USAGE / LIMIT MEM %
776035a48a44 0.00% 1.766MiB / 1.958GiB 0.09%
Afficher les événements qui se produisent sur le bus du moteur Docker (équivalent à un tailsur un fichier de log)
Pour tester cette commande, il faut générer quelques actions sur un conteneur et visualiser en même temps les évènements sur un autre terminal :
$ docker run -d –name test_eventsnginx
$ docker pause test_events
$ docker unpausetest_events
$ docker stop test_events
Observer les événements depuis un autre terminal :
$ docker events
2017 - 12 - 18T16:54:15.866668426+01:00 container pause 331e1e904e1e21e963ac729df121cabe782
2017 - 12 - 18T16:54:24.678680900+01:00 container unpause331e1e904e1e21e963ac729df121cabe7
2017 - 12 - 18T16:54:29.942202432+01:00 container kill331e1e904e1e21e963ac729df121cabe7
1. Nous contactez
- Description: Besoin de Formation et des Solutions cloud complètes pour vos applications
- Links:
2. Infra as a Service
- Description: Infrastructure cloud évolutive et sécurisée
- Links:
3. Projets Développeurs
- Description: Découvrez des opportunités passionnantes pour les développeurs
- Links:
4. Développeurs
- Description: Rejoignez notre communauté de développeurs
- Links:
5. Formations Complètes
- Description: Accédez à des formations professionnelles de haute qualité
- Links:
6. Marketplace
- Description: Découvrez notre place de marché de services
- Links:
7. Blogs
- Description: Découvrez nos blogs
- Links:
- comment creer une application mobile ?
- Comment monitorer un site web ?
- Command Checkout in git ?
- Comment git checkout to commit ?
- supprimer une branche git
- dockercoin
- kubernetes c est quoi
- architecture kubernetes
- Installer Gitlab Runner ?
- .gitlab-ci.yml exemples
- CI/CD
- svelte 5 vs solid
- svelte vs lit
- solidjs vs qwik
- alpine vs vue
- Plateform Freelance 2025
- Creation d’un site Web gratuitement
This website is powered by ItGalaxy.io