Docker Maarch Courrier

Prérequis

  • Docker installé sur votre machine.
  • Docker Compose installé sur votre machine.
  • Les fichiers de configuration Docker (compose.yml) disponibles dans le projet.

Configuration des services

Service de base de données (db-mc)

  • Image : PostgreSQL 16 Alpine
  • Volumes :
    • db-data : Persistance des données SQL dans /var/lib/postgresql/data
    • sql_path : Scripts SQL partagés dans /home/sql
  • Variables d'environnement :
    • POSTGRES_DB : MaarchCourrier
    • POSTGRES_USER : maarch

Service d'application (app-mc)

  • Image : registry.maarch.org/maarch-dev/courrier:main
  • Volumes :
    • ${DOCSERVERS_ROOT_PATH} : Stockage des documents dans /opt/maarch/docservers
    • ${CUSTOM_PATH} : Personnalisations dans /var/www/html/MaarchCourrier/custom
  • Ports : ${APP_PORT}:80
  • Healthcheck : Vérification automatique de l'état du service

Variables d'environnement clés

Variable Description
DOCSERVERS_ROOT_PATH Chemin local pour le stockage des documents
CUSTOM_PATH Répertoire des personnalisations de l'app
APP_PORT Port d'exposition du service (ex: 8080:80)
LIBRAIRIES_PATH Chemin des librairies externes

Volumes persistants

  • db-data : Données de la base PostgreSQL
  • sql_path : Scripts SQL réutilisables
  • script_path : Scripts d'administration système

Configuration des variables d'environnement

Fichier docker.default.env

Le fichier docker.default.env contient les variables d'environnement essentielles pour configurer votre déploiement Maarch Courrier. Voici un exemple de configuration :

# Port d'exposition de l'application
APP_PORT=8080

# Chemins de stockage et de personnalisation
DOCSERVERS_ROOT_PATH=/home/maarch/courrier/docservers
CUSTOM_PATH=/home/maarch/courrier/custom
LIBRAIRIES_PATH=/home/maarch/courrier/librairies
CRON_CONFIGURATION_PATH=/home/maarch/courrier/cron/
MAARCH_TMP_DIR=/tmp

Copiez docker.default.env vers .env pour personnaliser votre configuration

Adaptez les chemins en fonction de votre infrastructure

Assurez-vous que les répertoires existent avant de lancer les conteneurs

Lancer les services

Pour lancer les services nécessaires à Maarch Courrier, utilisez la commande suivante :

docker compose -p mc_24 -f compose.yml --env-file .env up -d

Explication des paramètres :

  • docker compose : Commande principale pour gérer des applications multi-conteneurs Docker
  • -p mc_24 : Définit un nom de projet unique (mc_24 pour Maarch Courrier 2024)
    • Crée un préfixe pour les noms des conteneurs, réseaux et volumes
    • Permet de distinguer et d'isoler différentes instances de l'application
  • -f compose.yml : Spécifie le fichier de configuration Docker Compose à utiliser
    • Permet de définir plusieurs fichiers de configuration si nécessaire
    • Ici, on utilise le fichier compose.yml principal du projet
  • --env-file .env : Charge les variables d'environnement depuis un fichier .env
    • Permet de configurer dynamiquement les chemins, ports et autres paramètres
    • Sépare la configuration de l'infrastructure du code source
  • up : Construit, (re)crée et démarre les conteneurs
  • -d (mode détaché) : Lance les conteneurs en arrière-plan
    • Les conteneurs s'exécutent sans bloquer le terminal
    • Idéal pour les environnements de développement et de production

Arrêter les services

Pour arrêter les services, utilisez la commande suivante :

docker compose -p mc_24 -f compose.yml --env-file .env

Cette commande arrêtera et supprimera les conteneurs, réseaux, et volumes définis dans le fichier compose.yml.

Redémarrer les services

Si vous avez besoin de redémarrer les services, vous pouvez utiliser la commande suivante :

docker compose -p mc_24 -f compose.yml --env-file .env restart

Voir les logs des conteneurs

Pour visualiser les logs des conteneurs, utilisez la commande suivante :

docker compose -p mc_24 -f compose.yml --env-file .env logs -f

Cela vous permettra de suivre en temps réel les logs des conteneurs.

results matching ""

    No results matching ""