Ajout version LXC et restructuration complète du projet
🚀 NOUVELLES FONCTIONNALITÉS : - Version LXC complète pour Proxmox avec installation automatisée - Script d'installation LXC avec interface colorée et vérifications - Service systemd avec configuration sécurisée - Script de désinstallation avec sauvegarde de config 📁 RESTRUCTURATION : - Séparation Docker/LXC dans des dossiers dédiés - Documentation spécialisée pour chaque version - Guide d'installation unifié (INSTALL.md) - README principal avec comparaison des versions 🐳 AMÉLIORATIONS DOCKER : - docker-compose.yml optimisé avec healthcheck - Documentation Docker détaillée - Configuration par variables d'environnement clarifiée 📦 FONCTIONNALITÉS LXC : - Installation en une commande - Intégration systemd native - Gestion des permissions et sécurité - Logs intégrés avec journalctl - Configuration via fichier d'environnement 🔧 OUTILS INCLUS : - Scripts d'installation/désinstallation - Healthchecks pour les deux versions - Documentation de dépannage - Comparatif des deux approches 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
173
docker/README-DOCKER.md
Normal file
173
docker/README-DOCKER.md
Normal file
@@ -0,0 +1,173 @@
|
||||
# Version Docker
|
||||
|
||||
Documentation spécifique pour l'installation et l'utilisation avec Docker.
|
||||
|
||||
## Fichiers inclus
|
||||
|
||||
- `Dockerfile` : Image Docker
|
||||
- `Dell_iDRAC_fan_controller.sh` : Script principal
|
||||
- `functions.sh` : Fonctions utilitaires
|
||||
- `healthcheck.sh` : Vérification de santé
|
||||
|
||||
## Installation Docker
|
||||
|
||||
### 1. Construction de l'image
|
||||
|
||||
```bash
|
||||
cd docker/
|
||||
docker build -t idrac-fan-controller .
|
||||
```
|
||||
|
||||
### 2. Utilisation avec Docker Compose (recommandé)
|
||||
|
||||
**Créer `docker-compose.yml` :**
|
||||
|
||||
```yml
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
idrac_fan_controller:
|
||||
build: .
|
||||
container_name: idrac_fan_controller
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
# Connexion iDRAC
|
||||
- IDRAC_HOST=local # ou IP pour distant
|
||||
- IDRAC_USERNAME=root # si distant
|
||||
- IDRAC_PASSWORD=calvin # si distant
|
||||
|
||||
# Seuils de température (°C)
|
||||
- CPU_TEMPERATURE_1=30
|
||||
- CPU_TEMPERATURE_2=40
|
||||
- CPU_TEMPERATURE_3=50
|
||||
- CPU_TEMPERATURE_4=60
|
||||
|
||||
# Vitesses correspondantes (%)
|
||||
- FAN_SPEED_1=10
|
||||
- FAN_SPEED_2=30
|
||||
- FAN_SPEED_3=60
|
||||
- FAN_SPEED_4=80
|
||||
|
||||
# Seuil de sécurité
|
||||
- CPU_TEMPERATURE_THRESHOLD=70
|
||||
|
||||
# Autres paramètres
|
||||
- CHECK_INTERVAL=60
|
||||
- DISABLE_THIRD_PARTY_PCIE_CARD_DELL_DEFAULT_COOLING_RESPONSE=false
|
||||
|
||||
devices:
|
||||
- /dev/ipmi0:/dev/ipmi0:rw # Pour iDRAC local
|
||||
|
||||
# Optionnel : logs persistants
|
||||
volumes:
|
||||
- ./logs:/var/log/idrac
|
||||
```
|
||||
|
||||
### 3. Lancement
|
||||
|
||||
```bash
|
||||
# Démarrer
|
||||
docker-compose up -d
|
||||
|
||||
# Voir les logs
|
||||
docker-compose logs -f
|
||||
|
||||
# Arrêter
|
||||
docker-compose down
|
||||
```
|
||||
|
||||
## Configuration par variables d'environnement
|
||||
|
||||
Toutes les variables peuvent être configurées via l'environnement :
|
||||
|
||||
```bash
|
||||
# Exemple pour iDRAC distant
|
||||
docker run -d \
|
||||
--name idrac_fan_controller \
|
||||
--restart unless-stopped \
|
||||
-e IDRAC_HOST=192.168.1.100 \
|
||||
-e IDRAC_USERNAME=root \
|
||||
-e IDRAC_PASSWORD=calvin \
|
||||
-e CPU_TEMPERATURE_1=30 \
|
||||
-e CPU_TEMPERATURE_2=40 \
|
||||
-e CPU_TEMPERATURE_3=50 \
|
||||
-e CPU_TEMPERATURE_4=60 \
|
||||
-e FAN_SPEED_1=10 \
|
||||
-e FAN_SPEED_2=30 \
|
||||
-e FAN_SPEED_3=60 \
|
||||
-e FAN_SPEED_4=80 \
|
||||
-e CPU_TEMPERATURE_THRESHOLD=70 \
|
||||
-e CHECK_INTERVAL=60 \
|
||||
idrac-fan-controller
|
||||
```
|
||||
|
||||
## Gestion
|
||||
|
||||
### Commandes utiles
|
||||
|
||||
```bash
|
||||
# État du container
|
||||
docker-compose ps
|
||||
|
||||
# Logs en temps réel
|
||||
docker-compose logs -f idrac_fan_controller
|
||||
|
||||
# Redémarrer
|
||||
docker-compose restart idrac_fan_controller
|
||||
|
||||
# Shell dans le container
|
||||
docker-compose exec idrac_fan_controller bash
|
||||
|
||||
# Test de santé
|
||||
docker-compose exec idrac_fan_controller ./healthcheck.sh
|
||||
```
|
||||
|
||||
### Mise à jour
|
||||
|
||||
```bash
|
||||
# Reconstruire l'image
|
||||
docker-compose build
|
||||
|
||||
# Redémarrer avec la nouvelle image
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
## Dépannage Docker
|
||||
|
||||
### Vérification de l'accès IPMI
|
||||
|
||||
```bash
|
||||
# Dans le container
|
||||
docker-compose exec idrac_fan_controller ls -la /dev/ipmi*
|
||||
|
||||
# Test ipmitool
|
||||
docker-compose exec idrac_fan_controller ipmitool fru
|
||||
```
|
||||
|
||||
### Erreurs communes
|
||||
|
||||
**"Could not open device at /dev/ipmi0"**
|
||||
```bash
|
||||
# Vérifier sur l'hôte
|
||||
ls -la /dev/ipmi*
|
||||
|
||||
# Vérifier les permissions
|
||||
docker-compose exec idrac_fan_controller ls -la /dev/ipmi*
|
||||
```
|
||||
|
||||
**Container qui s'arrête**
|
||||
```bash
|
||||
# Voir les logs
|
||||
docker-compose logs idrac_fan_controller
|
||||
|
||||
# Mode debug
|
||||
docker-compose run --rm idrac_fan_controller bash
|
||||
```
|
||||
|
||||
## Avantages Docker
|
||||
|
||||
- **Isolation** : Environment isolé
|
||||
- **Reproductibilité** : Même environnement partout
|
||||
- **Versioning** : Images versionnées
|
||||
- **Rollback** : Retour en arrière facile
|
||||
- **Orchestration** : Intégration avec autres services
|
||||
Reference in New Issue
Block a user