#!/bin/bash set -euo pipefail echo "🚀 DÉMARRAGE DU CONTAINER MASTER LECOFFRE_NODE" echo "==============================================" # Fonction de logging log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" } # VĂ©rification des prĂ©requis log "VĂ©rification des prĂ©requis..." # VĂ©rifier que Docker est disponible if ! command -v docker &> /dev/null; then log "❌ Docker non disponible" exit 1 fi # VĂ©rifier que docker-compose est disponible if ! command -v docker-compose &> /dev/null; then log "❌ Docker Compose non disponible" exit 1 fi # VĂ©rifier que Nginx est configurĂ© if [ ! -f /etc/nginx/nginx.conf ]; then log "❌ Configuration Nginx manquante" exit 1 fi log "✅ PrĂ©requis validĂ©s" # Initialisation des rĂ©pertoires log "Initialisation des rĂ©pertoires..." mkdir -p /app/data /app/logs /app/logs/nginx /var/log/supervisor chown -R appuser:appuser /app/logs /var/log/supervisor || true # Configuration des permissions Docker if [ -S /var/run/docker.sock ]; then chown appuser:appuser /var/run/docker.sock || true fi # Test de la configuration Nginx log "Test de la configuration Nginx..." if ! nginx -t; then log "❌ Configuration Nginx invalide" exit 1 fi log "✅ Configuration Nginx valide" # Initialisation de la base de donnĂ©es Docker Compose log "Initialisation Docker Compose..." cd /app # CrĂ©ation du rĂ©seau Docker si nĂ©cessaire docker network create lecoffre_network 2>/dev/null || true # PrĂ©paration des variables d'environnement log "Configuration des variables d'environnement..." export COMPOSE_PROJECT_NAME=lecoffre export COMPOSE_FILE=/app/docker-compose.yml # DĂ©marrage des services en arriĂšre-plan log "DĂ©marrage des services Docker Compose..." nohup docker-compose up -d > /app/logs/docker-compose.log 2>&1 & DOCKER_COMPOSE_PID=$! # Attente du dĂ©marrage des services log "Attente du dĂ©marrage des services..." sleep 30 # VĂ©rification de l'Ă©tat des services log "VĂ©rification de l'Ă©tat des services..." docker-compose ps log "✅ Container Master LeCoffre Node dĂ©marrĂ© avec succĂšs" log "📊 Services disponibles:" log " - Nginx: http://localhost" log " - Status: http://localhost/status/" log " - Grafana: http://localhost/grafana/" # DĂ©marrage de Supervisor log "DĂ©marrage de Supervisor..." exec "$@"