« Docker compose » : différence entre les versions

De OSWiki
Aller à la navigation Aller à la recherche
 
(22 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
Docker-compose permet de simplifier la gestion de plusieurs conteneurs.
= Installer Docker compose sous GNU/Linux=
= Installer Docker compose sous GNU/Linux=
   curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py
   curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py
Ligne 5 : Ligne 7 :
Test :
Test :
   docker-compose version
   docker-compose version
= Utilisation =
= Utilisation =
== Fichier docker-compose.yml==
* Contient les informations pour créer notre infrastructure.
* Attention à l'indentation avec yalm.
=== Le fichier ===
  version: '2'
  volumes:
    <nom_du_volume>:
  networks:
    <nom_du_réseau>:
  services:
    <nom_du_service>:
      image : <nom_de_l_image>
      container_name : <nom_du_conteneur>
      volumes:
        - <nom_du_volume>:/var/www
    environment:
      - VARIABLE=truc
    ports:
      - "80:80"
    networks:
      - <nom_du_réseau>
=== Quelques notions  de comparaison avec docker ===
==== Les volumes ====
* Les données stockées dans les conteneurs sont éphémères.
* Les volumes
** permettent de conserver les données généralement dans /var/lib/docker/volumes,
** peuvent être partagés entre plusieurs conteneurs,
* Créer un volume :
docker volume create --name <nom_du_voumue>
====Networks ====
* Gestion de la configuration réseau.
* Création de plusieurs networks et faire des groupes de conteneurs. Docker compose le fait pour chaque fichier yml/
* Communication des conteneurs entre-eux.
* Bridge : network créé en même temps que l'installation de docker, utilisé par défaut.
* Créer un réseau :
docker network create <nom_du_réseau>
* Liste des networks :
docker network ls
==== Services ====
* Définit les conteneurs
* Lancer un conteneur :
docker run -d etc...
=== Lancer docker-compose===
Se placer dans le dossier de fichier yml
docker-compose up -d
=Aide =
  docker-compose --help
Définir et exécuter des applications multi-conteneurs avec Docker.
Usage:
  docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
  docker-compose -h|--help
Options:
  -f, --file FILE            Spécifier un autre fichier de composition
                              (par défaut : docker-compose.yml)
  -p, --project-name NAME    Spécifier un nom de projet alternatif
                              (par défaut : nom du répertoire)
  -c, --context NAME          Spécifier un nom de contexte
  --verbose                  Afficher plus de résultats
  --log-level LEVEL          Définit le niveau du journal (DEBUG, INFO, WARNING, ERROR, CRITICAL)
  --no-ansi                  Ne pas imprimer les caractères de contrôle ANSI
  -v, --version              Affiche la version et quitte le programme
  -H, --host HOST            Socket du daemon auquel se connecter
  --tls                      Utilise TLS ; impliqué par --tlsverify
  --tlscacert CA_PATH        Faire confiance aux certificats signés uniquement par ce CA
  --tlscert CLIENT_CERT_PATH  Chemin du fichier de certificat TLS
  --tlskey TLS_KEY_PATH      Chemin d'accès au fichier de clés TLS
  --tlsverify                Utiliser TLS et vérifier la connexion à distance.
  --skip-hostname-check      Ne pas vérifier le nom d'hôte du démon par rapport au nom
                              nom spécifié dans le certificat du client
  --project-directory PATH    Spécifier un répertoire de travail alternatif
                              (par défaut : le chemin du fichier Compose)
  --compatibility            Si défini, Compose tentera de convertir les clés
                              dans les fichiers v3 en leur équivalent non-Swarm.
  --env-file PATH            Indiquez un autre fichier d'environnement.
Commands:
  build              Compiler ou recompiler des services
  config            Valider et visualiser le fichier Compose
  create            Créer des services
  down              Arrêter et supprimer des conteneurs, des réseaux, des images et des volumes
  events            Recevoir les événements en temps réel des conteneurs
  exec              Exécuter une commande dans un conteneur en cours d'exécution
  help              Obtenir de l'aide sur une commande
  images            Lister les images
  kill              Tue les conteneurs
  logs              Afficher les données des conteneurs
  pause              Pause des services
  port              Imprimer le port public pour une liaison de port
  ps                Liste des conteneurs
  pull              Extraire les images des services
  push              Pousse les images des services
  restart            Redémarre les services
  rm                Suppression des conteneurs arrêtés
  run                Exécuter une commande ponctuelle
  scale              Définit le nombre de conteneurs pour un service
  start              Démarrer les services
  stop              Arrête les services
  top                Afficher les processus en cours
  unpause            Désactiver les services
  up                Créer et démarrer des conteneurs
  version            Afficher les informations sur la version de Docker-Compose
= Sources =
* https://xataz.developpez.com/tutoriels/utilisation-docker/#LXII-B
=Ressources=
[https://www.alsacreations.com/tuto/lire/1838-Docker-compose.html Alsacreation]

Version actuelle datée du 21 décembre 2021 à 00:13

Docker-compose permet de simplifier la gestion de plusieurs conteneurs.

Installer Docker compose sous GNU/Linux

 curl https://bootstrap.pypa.io/pip/2.7/get-pip.py --output get-pip.py
 sudo python2 get-pip.py
 pip install docker-compose

Test :

 docker-compose version

Utilisation

Fichier docker-compose.yml

* Contient les informations pour créer notre infrastructure.
* Attention à l'indentation avec yalm.

Le fichier

 version: '2'
 volumes:
   <nom_du_volume>:
 networks:
   <nom_du_réseau>:
 services:
   <nom_du_service>:
      image : <nom_de_l_image>
      container_name : <nom_du_conteneur>
      volumes:
        - <nom_du_volume>:/var/www
   environment:
     - VARIABLE=truc
   ports:
     - "80:80"
   networks:
     - <nom_du_réseau>

Quelques notions de comparaison avec docker

Les volumes

  • Les données stockées dans les conteneurs sont éphémères.
  • Les volumes
    • permettent de conserver les données généralement dans /var/lib/docker/volumes,
    • peuvent être partagés entre plusieurs conteneurs,
  • Créer un volume :
docker volume create --name <nom_du_voumue>

Networks

  • Gestion de la configuration réseau.
  • Création de plusieurs networks et faire des groupes de conteneurs. Docker compose le fait pour chaque fichier yml/
  • Communication des conteneurs entre-eux.
  • Bridge : network créé en même temps que l'installation de docker, utilisé par défaut.
  • Créer un réseau :
docker network create <nom_du_réseau>
  • Liste des networks :
docker network ls

Services

  • Définit les conteneurs
  • Lancer un conteneur :
docker run -d etc...

Lancer docker-compose

Se placer dans le dossier de fichier yml

docker-compose up -d

Aide

 docker-compose --help

Définir et exécuter des applications multi-conteneurs avec Docker.

Usage:

 docker-compose [-f <arg>...] [options] [COMMAND] [ARGS...]
 docker-compose -h|--help

Options:

 -f, --file FILE             Spécifier un autre fichier de composition
                             (par défaut : docker-compose.yml)
 -p, --project-name NAME     Spécifier un nom de projet alternatif
                             (par défaut : nom du répertoire)
 -c, --context NAME          Spécifier un nom de contexte
 --verbose                   Afficher plus de résultats
 --log-level LEVEL           Définit le niveau du journal (DEBUG, INFO, WARNING, ERROR, CRITICAL)
 --no-ansi                   Ne pas imprimer les caractères de contrôle ANSI
 -v, --version               Affiche la version et quitte le programme
 -H, --host HOST             Socket du daemon auquel se connecter
 --tls                       Utilise TLS ; impliqué par --tlsverify
 --tlscacert CA_PATH         Faire confiance aux certificats signés uniquement par ce CA
 --tlscert CLIENT_CERT_PATH  Chemin du fichier de certificat TLS
 --tlskey TLS_KEY_PATH       Chemin d'accès au fichier de clés TLS
 --tlsverify                 Utiliser TLS et vérifier la connexion à distance.
 --skip-hostname-check       Ne pas vérifier le nom d'hôte du démon par rapport au nom
                             nom spécifié dans le certificat du client
 --project-directory PATH    Spécifier un répertoire de travail alternatif
                             (par défaut : le chemin du fichier Compose)
 --compatibility             Si défini, Compose tentera de convertir les clés
                             dans les fichiers v3 en leur équivalent non-Swarm.
 --env-file PATH             Indiquez un autre fichier d'environnement.

Commands:

 build              Compiler ou recompiler des services
 config             Valider et visualiser le fichier Compose
 create             Créer des services
 down               Arrêter et supprimer des conteneurs, des réseaux, des images et des volumes
 events             Recevoir les événements en temps réel des conteneurs
 exec               Exécuter une commande dans un conteneur en cours d'exécution
 help               Obtenir de l'aide sur une commande
 images             Lister les images
 kill               Tue les conteneurs
 logs               Afficher les données des conteneurs
 pause              Pause des services
 port               Imprimer le port public pour une liaison de port
 ps                 Liste des conteneurs
 pull               Extraire les images des services
 push               Pousse les images des services
 restart            Redémarre les services
 rm                 Suppression des conteneurs arrêtés
 run                Exécuter une commande ponctuelle
 scale              Définit le nombre de conteneurs pour un service
 start              Démarrer les services
 stop               Arrête les services
 top                Afficher les processus en cours
 unpause            Désactiver les services
 up                 Créer et démarrer des conteneurs
 version            Afficher les informations sur la version de Docker-Compose

Sources

Ressources

Alsacreation