Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
docker-compose [Le 09/05/2022, 11:43] bcag2 ajout §[Problème] |
docker-compose [Le 19/10/2023, 17:24] (Version actuelle) krodelabestiole [Docker-Compose] intro |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag> Xenial Focal virtualisation}} | + | {{tag> Xenial Focal virtualisation VETUSTE}} |
---- | ---- | ||
====== Docker-Compose ====== | ====== Docker-Compose ====== | ||
- | [[wpfr>Docker_(logiciel)#Outils_associés|Docker compose]] permet de définir et exécuter de multiple conteneurs [[:docker]].\\ Pour plus d'informations, consulter [[https://docs.docker.com/compose/|la documentation officielle (en)]] | + | [[wpfr>Docker_(logiciel)#Outils_associés|Docker compose]] permet de définir et exécuter de multiple conteneurs [[:docker]]. |
+ | |||
+ | La commande ''docker compose'' va chercher un fichier ''docker-compose.yml'' qui décrit des objets docker (principalement des containers) et leur configuration : | ||
+ | * nom d'une ou plusieurs images docker (éventuellement à construire et) à lancer | ||
+ | * variables d'environnement | ||
+ | * utilisateurs | ||
+ | * volumes (espaces de stockages persistés et points de montage) | ||
+ | * réseaux docker | ||
+ | etc. | ||
+ | |||
+ | Cela permet de décrire un environnement, et de toucher à ce qu'on appelle l'//[[wpfr>infrastructure as code]]//. | ||
+ | |||
+ | Pour plus d'information, consulter [[https://docs.docker.com/compose/|la documentation officielle (en)]] | ||
+ | |||
+ | <note important>**Docker compose** est une extension de [[:docker]]. | ||
+ | |||
+ | C'était auparavant une application autonome. Elle ne s'installe plus de la même façon et on n'utilise plus la commande : | ||
+ | <code>docker-compose</code> | ||
+ | mais | ||
+ | <code>docker compose</code> | ||
+ | Certaines documentations anciennes sont donc à ajuster. | ||
+ | |||
+ | FIXME C'est aussi le cas de cette page qui est aujourd'hui en grande partie obsolète.</note> | ||
+ | |||
===== Installation ===== | ===== Installation ===== | ||
- | ==== Depuis les dépôts officiels (conseillé) ==== | + | ==== Depuis les dépôts officiels d'Ubuntu (conseillé) ==== |
<code bash>apt install docker-compose</code> | <code bash>apt install docker-compose</code> | ||
- | ==== Avec le binaire ==== | + | ==== Depuis le dépôt docker (conseillé pour avoir une version plus récente) ==== |
+ | Reportez-vous à [[:docker#methode_conseilleeinstallation_depuis_les_depots_officiels|l'installation sur la page docker]]\\ | ||
+ | Cette solution installe le plug-in //docker-compose-plugin// à docker qui ajoute la sous-commande //compose// à la commande //docker//, aussi les appels se font par <code bash>docker compose</code> sans le tiret entre les 2 mots. | ||
+ | ==== Avec le binaire (préférer la solution précédente) ==== | ||
Comme la plupart des logiciels, la version obtenue par les dépôts officielles peut-être un peu ancienne | Comme la plupart des logiciels, la version obtenue par les dépôts officielles peut-être un peu ancienne | ||
Ligne 25: | Ligne 52: | ||
puis le rendre exécutable : | puis le rendre exécutable : | ||
<code bash> | <code bash> | ||
- | sudo chown +x /usr/local/bin/docker-compose | + | sudo chmod +x /usr/local/bin/docker-compose |
</code> | </code> | ||
Vérifier que docker-compose s'appelle correctement : | Vérifier que docker-compose s'appelle correctement : | ||
Ligne 32: | Ligne 59: | ||
# qui doit retourné une ligne du type : | # qui doit retourné une ligne du type : | ||
Docker Compose version v2.2.3 | Docker Compose version v2.2.3 | ||
+ | </code> | ||
+ | Ces commandes toutes en un pour la mise à jour sur un serveur donne ((ne le faites sur un serveur en //production// que si vous êtes sûr de ce que vous faites)) : | ||
+ | <code bash> | ||
+ | wget https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64 && sudo mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose && sudo chmod +x /usr/local/bin/docker-compose && docker-compose --version | ||
</code> | </code> | ||
- | Sous [[:bionic]], la version de docker depuis les dépôt officiels est, en ce mois de mars 2022, la v19.03.13 qui est compatible avec docker-compose v2 | + | <note> |
+ | La mise à jour peut-être faite alors que des containers tournent.\\ | ||
+ | Sous [[:bionic]], la version de docker depuis les dépôt officiels est, en mars 2022, la v19.03.13 qui est compatible avec docker-compose v2 | ||
+ | </note> | ||
===== Problèmes ===== | ===== Problèmes ===== | ||
Si un docker-compose retourne l'erreur : | Si un docker-compose retourne l'erreur : |