[Docker] Installation et première utilisation

 

Installation et première utilisation sous Docker
Article original Publié le : 11 octobre 2020
Mise a jour le :

Un petit tuto pense-bête sur les commandes docker
Pour rappel, pour la même image, on peut avoir plusieurs conteneur

Testé sous Ubuntu 20.04

 

Préparation de l’environnement

  • Mise a jour du système

  • Installation des paquets nécessaires

  • Installation de paquet utile

 

 

Installation de Docker

Ajoutez la clé GPG du dépôt officiel de Docker au trousseau de clé d’apt, puis ajouter le dépôt au source.list

 

Mettre à jour la base de données des paquets et installer le paquet Docker

L’installation terminé, le service est démarré implicitement, une interface réseau virtuelle est crée ainsi que le client Docker

Si on fait un id sur son utilisateur on constate qu’il nous manque le groupe docker
Il faut donc donner les droits a l’utilisateur au groupe docker pour hériter des droits sudo,

ou

Fermer la session ou faire un su sur son user pour appliquer les droits au groupe, refaire un id pour vérifier

ou

 

 

Les commandes Docker

Elle sont nombreuses mais sur ce tuto on en verra que quelques-unes

docker attach – docker diff – docker kill – docker port – docker search – docker top
docker build – docker events – docker load – docker ps – docker secret – docker trust
docker builder – docker exec – docker login – docker pull – docker service – docker unpause
docker checkpoint – docker export – docker logout – docker push – docker stack – docker update
docker commit – docker history – docker logs – docker rename – docker start – docker version
docker config – docker image – docker manifest – docker restart – docker stats – docker volume
docker container – docker images – docker network – docker rm – docker stop – docker wait
docker context – docker import – docker node – docker rmi – docker swarm –
docker cp – docker info – docker pause – docker run – docker system –
docker create – docker inspect – docker plugin – docker save – docker tag

 

Pour lister les images présentes sur le système (par défaut il n’y en a pas)

 

La première image que l’on peut tester est une image test ( https://hub.docker.com/_/hello-world )
Si elle n’est pas présente localement, docker ira vérifier son référentiel puis téléchargera l’image

 

Si on relance la commande “docker images” on trouve l’image dans son repository local

 

Pour rechercher une images dans le référentiel par défaut, pour l’exemple je cherche une image centos

Les résultats retournent l’image officiel et les images alternatives faites par la communauté.
Les stars sont la popularité des images.

 

Pour récupérer l’image, comme pour un git faire un pull

 

Nous avons maintenant 2 images

 

Pour créer un conteneur depuis l’image centos, utiliser les paramètres “i” pour interactif et “t” pour allouer a une sortie standard tty. Un nouveau prompt apparaît avec l’id de l’image
/!\ a chaque exécution de cette commande vers cette image il créera un nouveau conteneur et donc un nouvel id associé a ce conteneur.

 

La vm est identifié avec son id “244b296b019b”, exemple avec la commande ps

 

Pour arrêter un conteneur en cours d’exécution, utilisez “docker stop” avec l’id ou le nom, (ou faire exit dans le conteneur)

ou

 

Pour (re)démarrer son conteneur on utilisera la commande “docker start” avec le paramètre “a” pour attacher l’image et “i” pour interactif suivi de l’id ou du nom du conteneur

ou

 

Il est possible de renommer l’image pour avoir un nom plus explicite, stopper le conteneur avant et utiliser la commande rename suivie de l’ancien et du nouveau nom puis démarrer le conteneur et vérifier avec docker ps

/!\ Il est possible de créer un conteneur directement avec son  nom avec l’argument –name

 

Dans le bundle de commande, il y en a aussi une pour supprimer les images et les conteneurs
Pour voir tous les conteneurs, actifs et inactifs, exécutez docker ps avec le commutateur -a

Pour supprimer le conteneur hello-world

On re-liste les images présentes, et on récupérer le nom ou l’id pour suppression de l’image hello-world

/!\ Rappel, les images et les conteneurs dispose chacun d’un nom et d’un id propre a eux

 

On peux créer autant de conteneur depuis une image et modifier a volonté ces conteneurs.
On peux aussi cloner un conteneur avec de nouvelles fonctionnalités pré-installés comme l’installation de programme et en faire une nouvelle image.

Dans l’exemple on va installer une application, cloner le conteneur en image pour pouvoir spawner plus tard des conteneurs avec cette application déjà installé

On peut installer n’importe quel programme sur un conteneur docker, tout comme une machine virtuelle
Pour le test j’installe juste l’éditeur de texte “vim”

Puis faire un commit du conteneur pour en faire une nouvelle image
exemple: docker commit -m “commentaire” -a “auteur” conteneur_id repository/nouvelle_image

Le -m est l’attribut commentaire
Le -a est l’attribut pour mettre le nom de l’auteur
244b296b019b est l’id du conteneur
img_centos8_avec_vim est le nom de la nouvelle image

Puis on re-liste les images

 

Cette image peut ensuite être partagé avec la communauté sur Docker Hub
Il faut avoir un compte sur la plateforme et un repository pour pouvoir pousser son image

Commencer par taggé l’image a pousser, exemple docker tag id_image user_id/image/tag

Puis pousser la avec la commande push

Recuperer l’image avec la commande pull

 

 

Pour plus d’info sur les commandes

 

Quelques liens

https://docs.docker.com/engine/reference/commandline/docker/

https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-on-ubuntu-20-04

 

 

No votes yet.
Please wait...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.