Compose: Remplacement global/par défaut pour tous les services

Créé le 19 avr. 2017  ·  3Commentaires  ·  Source: docker/compose

Ce que je veux faire, c'est séparer les réglages spécifiques à mon environnement dans un override.yml, rien d'extraordinaire là-bas ... mais mes remplacements seront exactement les mêmes pour chaque service déployé et je veux éviter d'avoir à écrire le même remplacement pour chaque service unique (et ajouter continuellement de nouvelles sections à la dérogation à mesure que de nouveaux services sont introduits).

Au lieu de cela, je voudrais créer une définition qui dit "appliquer cette dérogation à chaque service". Existe-t-il déjà un tel concept qui me manque peut-être ?

Exemple ...

docker-compose.yml :

  aservice:
    image: whatever1
    environment:
      FOO: BAR

un autre docker-compose.yml :

  anotherservice:
    image: whatever2

mon docker-compose.override.yml :

  <magickeyword>:
    environment:
      FLIBBLE: flobble
    dns:
      - server1
      - server2

Désormais, chaque service déployé aurait DNS server1 & server2 et la variable d'environnement FLIBBLE.

Je me rends compte que je pourrais le faire si tous les services étendaient le même service de base car je pouvais appliquer la dérogation à cela, mais existe-t-il de toute façon une dérogation globale/par défaut sans extension commune ?

Pour le moment, j'ai un hack qui implique une analyse de substitution générée pour tous les services définis et génère le fichier de substitution à la volée, mais cela semble être un cas d'utilisation que je ne peux pas être la première personne à rencontrer, alors je me suis demandé si je Je viens de rater la solution évidente à ce problème dans composer.

kinquestion

Commentaire le plus utile

Tous les 3 commentaires

Vous pouvez simplement avoir un fichier base.yml dans chaque dossier de projet avec un service base contenant uniquement votre clé environment , puis demander à chaque service d'étendre le service base .

Ce n'est plus une bonne solution étant donné que extends: est supprimé dans 3.x https://github.com/moby/moby/issues/31101

Cette page vous a été utile?
0 / 5 - 0 notes