web-dev-qa-db-fra.com

Comment prévenir Docker-Composer Ajout de hachage à créer des noms de conteneurs créés?

J'ai un serveur avec plusieurs conteneurs LXC. Dans certains des conteneurs, un docker est installé. Habituellement, une action de docker compose dans ces conteneurs LXC entraîne des noms de conteneurs avec le format appname_service_1, par exemple. wordpress_app_1 et wordpress_db_1, quand app et db sont deux services appelés dans le fichier wordpress compose - vous le savez.

Mais aujourd'hui, j'ai créé un autre conteneur LXC et installé Docker. La configuration est identique aux autres conteneurs, grâce à une éternelle. Cependant, les noms de conteneurs Docker sont différents, par ex. wordpress_db_1_c9de200f9abd. Le hachage à la fin diffère chaque fois que je supprime le conteneur et que je la crée.

Comme cela fait que les conteneurs ne soient pas si jetables comme ils devraient être, car il détruit les itinéraires entre les conteneurs, j'aimerais savoir pourquoi ces hachages sont annexées du tout. Tous les conteneurs LXC ont le même docker et la même version Docker-Compose installée. Je voudrais empêcher ces hashes dans mes noms de conteneurs Docker.

Pourquoi sont-ils en train de se produire et ne sont-ils pas arrivés auparavant?

6
simonszu

C'est le nouveau comportement de Docker-Compose et reflète le comportement du mode essaim. Il n'a pas d'incidence sur la possibilité de connecter les conteneurs via le réseau, car il existe des alias DNS pour le nom de service qui sont toujours inclus, dans votre cas app et db. Le nom complet du conteneur n'est pas nécessaire de se connecter à une réplique d'un service à l'aide de DNS rond-robin.

À partir des Notes de version :

Note importante

Le schéma de dénomination par défaut pour les conteneurs créé par composition dans cette version a été modifié de <project>_<service>_<index> à <project>_<service>_<index>_<slug>, où <slug> est une chaîne hexadécimale générée de manière aléatoire. Assurez-vous de mettre à jour les scripts en s'appuyant sur l'ancien schéma de dénomination avant la mise à niveau.

6
BMitch

Il est corrigé dans la version 1.23.2 :

Révertit un changement 1.23.0 qui a annoncé des chaînes aléatoires aux noms de conteneurs créés par Docker-composition, causant des problèmes de destinaçabilité. Remarque: les conteneurs créés par Docker-compose Run continuera à utiliser des noms générés au hasard pour éviter les collisions lors des courses parallèles.

6
barney765