Aller au contenu

Conventions

Structure d'un service

compose/<service>/
data/<service>/
env/<service>/
├── .env
└── .env.example
secrets/<service>/
docs/services/<service>.md

Déploiement

  • Utiliser les scripts du framework.
  • Éviter les commandes Docker manuelles.
  • Un service doit rester autonome.

Configuration

  • La configuration locale est dans env/<service>/.env.
  • env/<service>/.env.example contient la structure attendue et est versionné.
  • Les informations sensibles sont stockées dans secrets/<service>/.
  • Aucun secret ne doit être versionné.

Documentation

  • Une fiche par service.
  • Documenter uniquement ce qui n'est pas évident.
  • Mettre à jour la documentation après une modification importante.

Git

  • Les fichiers .env.example sont versionnés.
  • Les données et les secrets ne sont pas versionnés.
  • Un commit = une modification logique.

Philosophie

  • Faire simple.
  • Éviter les exceptions.
  • Standardiser avant d'automatiser.
  • Si une amélioration peut servir à plusieurs services, l'intégrer au framework.