version: '3.8' services: idrac_fan_controller: build: . container_name: idrac_fan_controller restart: unless-stopped environment: # Connexion iDRAC - IDRAC_HOST=local # "local" ou IP pour distant (ex: 192.168.1.100) - IDRAC_USERNAME=root # Requis seulement si IDRAC_HOST != "local" - IDRAC_PASSWORD=calvin # Requis seulement si IDRAC_HOST != "local" # === Seuils de température (°C) === # Température <= CPU_TEMPERATURE_1 → vitesse FAN_SPEED_1 - CPU_TEMPERATURE_1=30 # Température <= CPU_TEMPERATURE_2 → vitesse FAN_SPEED_2 - CPU_TEMPERATURE_2=40 # Température <= CPU_TEMPERATURE_3 → vitesse FAN_SPEED_3 - CPU_TEMPERATURE_3=50 # Température <= CPU_TEMPERATURE_4 → vitesse FAN_SPEED_4 - CPU_TEMPERATURE_4=60 # === Vitesses des ventilateurs (%) === - FAN_SPEED_1=10 # Vitesse minimale - FAN_SPEED_2=30 - FAN_SPEED_3=60 - FAN_SPEED_4=80 # Si > CPU_TEMPERATURE_4 → 100% # === Seuil de sécurité === # Si température > CPU_TEMPERATURE_THRESHOLD → mode Dell par défaut - CPU_TEMPERATURE_THRESHOLD=70 # === Autres paramètres === - CHECK_INTERVAL=60 # Secondes entre chaque vérification - DISABLE_THIRD_PARTY_PCIE_CARD_DELL_DEFAULT_COOLING_RESPONSE=false # Accès au périphérique IPMI (requis pour IDRAC_HOST=local) devices: - /dev/ipmi0:/dev/ipmi0:rw # Logs persistants (optionnel) volumes: - ./logs:/var/log/idrac # Healthcheck intégré healthcheck: test: ["CMD", "/app/healthcheck.sh"] interval: 30s timeout: 10s retries: 3 start_period: 10s