GNU/Linux >> Tutoriels Linux >  >> Panels >> Docker

Quoi de neuf dans Docker Compose v2 ?

Docker Compose est un outil extrêmement populaire pour travailler avec des conteneurs. Alors que le docker ordinaire La CLI interagit avec un conteneur à la fois, docker-compose vous permet de contrôler plusieurs conteneurs de manière agrégée.

Compose existe actuellement en tant que projet autonome distribué indépendamment de Docker. Si vous souhaitez utiliser Compose, vous devrez le télécharger séparément. De nombreux utilisateurs finissent par saisir directement le binaire, car les gestionnaires de packages de système d'exploitation sont souvent à la traîne, même s'ils proposent la dernière version de Docker.

Docker Compose v2 a été annoncé lors de la DockerCon 2021. Il promet de grands changements dans l'expérience Compose en l'intégrant dans le docker CLI. v2 est également livré avec de nouvelles fonctionnalités pratiques pour vous aider à gérer vos piles de conteneurs.

La nouvelle commande "docker compose"

Docker Compose v2 apporte la fonctionnalité Compose dans Docker lui-même. Vous pourrez utiliser Compose partout où la dernière CLI Docker est installée, aucune étape supplémentaire n'est requise. En dessous, Docker continue d'utiliser les fonctionnalités fournies par le projet Compose.

docker-compose existant les commandes doivent correspondre directement à leur nouveau docker compose homologues. Dans la plupart des cas, vous pouvez supprimer le tiret sans autre modification nécessaire. docker compose prend en charge presque toutes les sous-commandes et indicateurs Compose v1, bien qu'une minorité ne soit pas implémentée.

Compose v2 prendra toujours en charge l'invocation via le docker-compose binaire. Les scripts de flux de travail existants doivent continuer à fonctionner, même si vous ne les mettez pas immédiatement à jour pour utiliser docker compose . À long terme, il est probable que la plupart des auteurs passeront plutôt au nouveau formulaire.

Expérimenter avec Docker Compose v2

Compose v2 est actuellement en version bêta. Bien qu'il reste en développement, le nouveau binaire est déjà livré avec Docker Desktop pour Windows et Mac. Desktop v3.4 a ajouté la prise en charge du docker compose commandes, il y a donc de fortes chances que vous puissiez déjà l'utiliser aujourd'hui. Les packages Linux seront mis à jour plus tard dans l'année; un script d'installation manuelle est disponible en attendant.

Le docker-compose La commande peut actuellement invoquer v1 ou v2, par défaut v1. L'option est automatiquement activée pour un sous-ensemble d'utilisateurs ; il lancera éventuellement la v2 pour tous.

Vous pouvez basculer manuellement docker-compose entre v1 et v2 en exécutant docker-compose disable-v2 ou docker-compose enable-v2 . Cela vous permet de maintenir la compatibilité avec tous les fichiers Compose existants qui ne fonctionnent pas avec la v2. docker compose les commandes utiliseront toujours la v2.

Modifications des spécifications

L'apport de la fonctionnalité Compose à la CLI Docker a nécessité des modifications de la spécification Compose. Cela fait désormais la distinction entre les implémentations de commande et le docker-compose.yml Format YAML.

L'approche révisée offre de nouvelles possibilités d'intégrer des fonctionnalités supplémentaires. Les implémentations expérimentales peuvent être fournies plus rapidement et l'équipe Compose est mieux équipée pour ajouter des propositions communautaires. La CLI est plus découplée du format de fichier YAML, donc des implémentations alternatives (comme docker compose ) sont une possibilité.

Au-delà de la CLI, l'existence de la spécification Composer permet aux fournisseurs de cloud d'implémenter également la fonctionnalité Compose. Vous pouvez maintenant exécuter docker compose up dans un contexte Docker basé sur le cloud pour lancer votre application en production. Docker est livré avec une prise en charge intégrée des environnements Amazon ECS et Microsoft ACI.

En interne, Compose v2 utilise Buildkit par défaut pour des builds plus rapides. Les performances globales devraient être plus rapides car davantage de tâches s'exécutent en parallèle, ce qui réduit les temps de traitement.

Nouvelles fonctionnalités de la v2

Le passage de docker-compose à docker compose n'est pas le seul changement dans la v2. De nouvelles fonctionnalités affectent également la façon dont vous interagissez avec vos piles de conteneurs.

Une limitation de Compose v1 est son approche des noms de projet. Lorsque vous exécutez docker-compose up -d , Compose ajoute le nom du projet au nom du service de chaque conteneur. Cela garantit que tous les conteneurs sont regroupés.

v1 déduit le nom du projet à partir du nom de votre répertoire de travail. Vous pouvez choisir manuellement un nom différent en définissant le COMPOSE_PROJECT_NAME variable d'environnement.

La v2 simplifie cela en ajoutant un indicateur CLI pour définir le nom du projet. Ajouter --project-name ou -p pour ignorer le nom du répertoire de travail, sans modifier l'environnement. La définition manuelle du nom du projet vous permet de combiner des conteneurs de plusieurs répertoires de travail en une seule pile ou de démarrer plusieurs instances d'une pile de conteneurs.

Une autre nouvelle fonctionnalité v2 vous permet de répertorier toutes les piles Compose sur votre système. Le docker compose ls La commande fournit un tableau des noms de projet et de leur état (en cours d'exécution ou arrêté). Cela complète le docker compose ps commande qui donne les statuts des conteneurs dans une pile.

Compose v2 ajoute également la prise en charge de docker compose cp . Cette commande fonctionne de manière similaire à docker cp et vous permet de copier des fichiers dans et hors de vos conteneurs :

docker cp my-container local-file.txt /path/to/container/file.txt

Résumé

Docker Compose v2 est une mise à niveau substantielle qui apporte une commodité améliorée à l'outil de gestion des conteneurs. L'intégration de Compose dans la CLI principale de Docker signifie qu'il est disponible partout où Docker se trouve. Cela le rend plus accessible et plus facile à utiliser.

Compose v2 apporte également des commandes utilitaires supplémentaires pour faciliter le travail avec différentes piles et conteneurs. Vous bénéficiez d'une meilleure visibilité sur ce qui s'exécute sur votre système. Bien qu'elle soit encore en version bêta au moment de la rédaction de cet article, les utilisateurs Windows et Mac peuvent utiliser la v2 dès aujourd'hui, tandis que les utilisateurs Linux peuvent télécharger la dernière version depuis GitHub.


Docker
  1. Quoi de neuf avec rdiff-backup ?

  2. Qu'est-ce que Docker (et les conteneurs Linux ?)

  3. Comment utiliser Docker Compose

  4. Un guide rapide pour utiliser Docker Compose

  5. Définition du nom d'hôte dans Docker Compose

Qu'est-ce que Docker Compose et comment l'utiliser ?

Qu'est-ce qu'un manifeste d'image Docker ?

Comment installer Docker Compose sur Ubuntu

Docker File vs Docker Compose :quelle est la différence ?

Que faire si un conteneur Docker se ferme immédiatement

Quoi de neuf dans KDE Plasma 5.25