technique:docker

Ceci est une ancienne révision du document !


Virtualisation avec Docker

Docker est un système de virtualisation proche du sysème hote (s'il est similaire). Il permet de partager des ressources et de moins solliciter le système.

Quelques sources :

Voir la méthode recommandée : https://docs.docker.com/install

Ou depuis les dépots d'Ubuntu récents :

sudo apt install docker.io

Mettre l'utilisateur courant dans le groupe docker :

sudo addgroup monlogin docker

On peut soit récupérer une image docker existante depuis un dépot (hub.docker.com), soit la créér-adapter soi-même depuis un fichier texte nommé Dockerfile (combiné avec d'auters fichiers en option) (et l'envoyer ensuit sur le dépot).

Il faut donc distinguer :

  • image docker : image “modèle”, à mettre à jour
  • conteneur docker : une ou plusieurs instanciations de l'image docker de référence

Voir la version de docker : docker version

Récupérer une image : docker pull nomimage

Voir les images récupérées : docker images

Voir les images disponibles : docker search mot

Effacer une image locale : docker rmi nomimage

Chaque image peut être instanciée plusieurs fois pour avoir plusieurs conteneurs différentes, comportant chacun un nom propre.

Mettre à jour une image : docker update nomimage

Création d'un conteneur nommé : docker run -d –name nomconteneur nomimage

Exemple : docker run hello-world

Voir les instances en cours avec docker ps -a (et leur nom en fin de colonne).

Détruire un conteneur : docker rm nomconteneur

Lancer un conteneur : docker start nomconteneur

Arrêter un conteneur : docker stop nomconteneur

Voir les conteneurs actifs : docker ps

Voir les conteneurs actifs et inactifs : docker ps -a

Chaque image docker possède plusieurs tags, par défaut “latest” est utilisé pour avoir la dernière version.

docker run -it nomimage : lance un conteneur en mode interactif, on se retrouve dans le conteneur.

docker start nomcontainer : démarre un conteneur existant

docker exec nomcontainer /bin/bash bash : prend la main sur ce conteneur

docker stop nomcontainer : stoppe un conteneur existant

docker -h

docker container -h # manage les container

docker image -h # manage les images

Idem pour network, service, system….

Dans un dossier “mondocker” contenant un fichier index.html personnalisé, créer un fichier Dockerfile :

FROM nginx
COPY index.html /usr/share/nginx/html/index.html

Dans le dossier mondocker, lancer le docker avec :

docker build -t mondocker .
Puis
docker run -p 8888:80 mondocker:latest

Et pointer vers http://localhost:8888 pour voir la page html customisée.

  • technique/docker.1603737487.txt.gz
  • Dernière modification : 2020/10/26 19:38
  • de francoisa