Les Bonnes Pratiques
III - Les Bonnes Pratiques
pour l'utilisation de docker compose, je vous fait quelques recommandations :
Organisation
concernant l'organisation il peut sembler logique de mettre toutes les configuration dans le meme fichier, mais ce n'est pas le mieux a faire sauf dans certain cas.
Le mieux est 1 services 1 dossier voici un exemple d'arborescence :
Dossier
|_ docker-compose.yml
|_volume
|_fichier de configuration
Mais il serait nécéssaire de mettre plusieurs conteneur dans le meme fichier quand cela concerne le meme services. Il est possible qu'un service ai besoin d'un conteneur de base de donnée, et dans ce cas il faudra mettre le services et le conteneur de base de données dans le meme fichier docker-compose.yml car il peuvent avoir des dépendance entre eux.
Réseaux
Pour la gestion des réseaux, chacun fait a ça manière. Moi en général je crée un réseau : frontend pour les servcies que je compte exposer et un réseau : backend pour les services qui s'occupe de l'automatisation ou de la base de données par exemple. Pour la création de réseau je ferais ça plus tard dans cette procédure.
Mots de Passe
Lors de la configuration de conteneur il peut défois être demander de spécifié un mot de passe par exemple dans la partie environement. Il serait tentant de mettre directement le mot de passe dans le fichier docker compose mais il y a plus simple et plus sécurisé. En effet il est possible de crée des fichier .env dans lequelle il est possible de spécifié des valeurs sous forme de variable. L'avantage c'est que dans le fichier docker compose aucun mot de passe en clair n'est présent, et on peut réutiliser les variable défini dans l'ensemble du fichier docker compose. D'ailleur ce fichier ne concerne pas que les mot de passe mais toutes les valeurs qui sont configurable dans le fichier docker compose.