« Docker compose » : différence entre les versions

De OSWiki
Aller à la navigation Aller à la recherche
 
(19 versions intermédiaires par le même utilisateur non affichées)
Ligne 9 : Ligne 9 :


= 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 =
=Aide =
  docker-compose --help
Définir et exécuter des applications multi-conteneurs avec Docker.  
Définir et exécuter des applications multi-conteneurs avec Docker.  


Ligne 41 : Ligne 96 :


Commands:
Commands:
   build              Build or rebuild services
   build              Compiler ou recompiler des services
   config            Validate and view the Compose file
   config            Valider et visualiser le fichier Compose
   create            Create services
   create            Créer des services
   down              Stop and remove containers, networks, images, and volumes
   down              Arrêter et supprimer des conteneurs, des réseaux, des images et des volumes
   events            Receive real time events from containers
   events            Recevoir les événements en temps réel des conteneurs
   exec              Execute a command in a running container
   exec              Exécuter une commande dans un conteneur en cours d'exécution
   help              Get help on a command
   help              Obtenir de l'aide sur une commande
   images            List images
   images            Lister les images
   kill              Kill containers
   kill              Tue les conteneurs
   logs              View output from containers
   logs              Afficher les données des conteneurs
   pause              Pause services
   pause              Pause des services
   port              Print the public port for a port binding
   port              Imprimer le port public pour une liaison de port
   ps                List containers
   ps                Liste des conteneurs
   pull              Pull service images
   pull              Extraire les images des services
   push              Push service images
   push              Pousse les images des services
   restart            Restart services
   restart            Redémarre les services
   rm                Remove stopped containers
   rm                Suppression des conteneurs arrêtés
   run                Run a one-off command
   run                Exécuter une commande ponctuelle
   scale              Set number of containers for a service
   scale              Définit le nombre de conteneurs pour un service
   start              Start services
   start              Démarrer les services
   stop              Stop services
   stop              Arrête les services
   top                Display the running processes
   top                Afficher les processus en cours
   unpause            Unpause services
   unpause            Désactiver les services
   up                Create and start containers
   up                Créer et démarrer des conteneurs
   version            Show the Docker-Compose version information
   version            Afficher les informations sur la version de Docker-Compose


= Sources =
= Sources =
* https://xataz.developpez.com/tutoriels/utilisation-docker/#LXII-B
* 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