Cette page décrit la procédure d’installation de Fess à l’aide de Docker et Docker Compose. L’utilisation de Docker vous permet de construire un environnement Fess facilement et rapidement.
Prérequis
La configuration requise décrite dans Configuration requise doit être satisfaite
Docker 20.10 ou ultérieur doit être installé
Docker Compose 2.0 ou ultérieur doit être installé
Vérification de l’installation de Docker
Vérifiez les versions de Docker et Docker Compose avec les commandes suivantes.
Note
Si vous utilisez une ancienne version de Docker Compose, utilisez la commande docker-compose. Ce document utilise le nouveau format de commande docker compose.
À propos des images Docker
Les images Docker de Fess sont composées des composants suivants :
Fess : Système de recherche plein texte principal
OpenSearch : Moteur de recherche
Les images Docker officielles sont publiées sur Docker Hub.
Étape 1 : Obtention des fichiers Docker Compose
Pour le démarrage avec Docker Compose, les fichiers suivants sont nécessaires.
Méthode 1 : Téléchargement individuel des fichiers
Téléchargez les fichiers suivants :
Méthode 2 : Clonage du dépôt avec Git
Si Git est installé, vous pouvez également cloner l’ensemble du dépôt :
Étape 2 : Vérification des fichiers Docker Compose
Contenu de compose.yaml
compose.yaml contient la configuration de base de Fess.
Paramètres principaux :
Numéro de port : Port de l’interface Web de Fess (par défaut : 8080)
Variables d’environnement : Configuration de la taille du tas Java, etc.
Volumes : Configuration de la persistance des données
Contenu de compose-opensearch3.yaml
compose-opensearch3.yaml contient la configuration d’OpenSearch.
Paramètres principaux :
Version d’OpenSearch : Version d’OpenSearch à utiliser
Configuration mémoire : Taille du tas JVM
Volumes : Configuration de la persistance des données d’index
Personnalisation de la configuration (optionnel)
Si vous souhaitez modifier la configuration par défaut, modifiez compose.yaml.
Exemple : Modification du numéro de port
Exemple : Modification de la configuration mémoire
Étape 3 : Démarrage des conteneurs Docker
Démarrage de base
Démarrez Fess et OpenSearch avec la commande suivante :
Note
L’option
-fpermet de spécifier plusieurs fichiers ComposeL’option
-dpermet d’exécuter en arrière-plan
Vérification des logs de démarrage
Vous pouvez terminer l’affichage des logs avec Ctrl+C.
Vérification du démarrage
Vérifiez l’état des conteneurs
Vérifiez que les conteneurs suivants sont en cours d’exécution :
fessopensearch
Astuce
Le démarrage peut prendre quelques minutes. Attendez jusqu’à ce que le message « Fess is ready » ou similaire apparaisse dans les logs.
Persistance des données
Pour conserver les données même après la suppression des conteneurs Docker, des volumes sont automatiquement créés.
Vérification des volumes
Volumes liés à Fess :
fess-es-data: Données d’index OpenSearchfess-data: Données de configuration de Fess
Important
Les volumes ne sont pas supprimés même si les conteneurs sont supprimés. Pour supprimer les volumes, vous devez exécuter explicitement la commande docker volume rm.
Arrêt des conteneurs Docker
Arrêt des conteneurs
Arrêt et suppression des conteneurs
Avertissement
La commande down supprime les conteneurs mais pas les volumes. Pour supprimer également les volumes, ajoutez l’option -v
Attention : L’exécution de cette commande supprimera toutes les données.
Configuration avancée
Personnalisation des variables d’environnement
En ajoutant/modifiant des variables d’environnement dans compose.yaml, vous pouvez effectuer des configurations détaillées.
Variables d’environnement principales :
| Variable d’environnement | Description |
|---|---|
FESS_HEAP_SIZE | Taille du tas JVM de Fess (par défaut : 1g) |
SEARCH_ENGINE_HTTP_URL | Point de terminaison HTTP d’OpenSearch |
TZ | Fuseau horaire (exemple : Europe/Paris) |
Exemple
Connexion à un OpenSearch externe
Si vous utilisez un cluster OpenSearch existant, modifiez compose.yaml pour changer la destination de connexion.
N’utilisez pas
compose-opensearch3.yamlConfigurez
SEARCH_ENGINE_HTTP_URL
Configuration du réseau Docker
Lors de l’intégration avec plusieurs services, vous pouvez utiliser un réseau personnalisé.
Exemple
Exploitation en production avec Docker Compose
Configuration recommandée pour l’utilisation de Docker Compose en environnement de production :
Configuration des limitations de ressources
Configuration de la politique de redémarrage
Configuration des logs
Activation de la configuration de sécurité
Activez le plugin de sécurité d’OpenSearch et configurez une authentification appropriée. Pour plus de détails, consultez Configuration de la sécurité.
Dépannage
Le conteneur ne démarre pas
Vérification des logs
Vérification des conflits de ports
Vérification de l’espace disque
Erreur de mémoire insuffisante
Si OpenSearch ne démarre pas en raison d’une mémoire insuffisante, vous devez augmenter vm.max_map_count.
Pour Linux
Pour une configuration permanente
Initialisation des données
Pour supprimer toutes les données et revenir à l’état initial
Avertissement
L’exécution de cette commande supprimera complètement toutes les données.
Étapes suivantes
Une fois l’installation terminée, consultez les documents suivants :
Démarrage, arrêt et configuration initiale - Démarrage de Fess et configuration initiale
Configuration de la sécurité - Configuration de la sécurité pour les environnements de production
Dépannage - Dépannage
Questions fréquemment posées
Q : Quelle est la taille des images Docker ?
R : L’image Fess fait environ 1 Go, et l’image OpenSearch fait environ 800 Mo. Le téléchargement peut prendre du temps lors du premier démarrage.
Q : Est-il possible d’exploiter sur Kubernetes ?
R : Oui, c’est possible. En convertissant les fichiers Docker Compose en manifestes Kubernetes, ou en utilisant des charts Helm, vous pouvez exploiter sur Kubernetes. Pour plus de détails, consultez la documentation officielle de Fess.
Q : Comment effectuer les mises à jour des conteneurs ?
R : Suivez la procédure suivante pour les mises à jour :
Obtenir les derniers fichiers Compose
Arrêter les conteneurs
Obtenir les nouvelles images
Démarrer les conteneurs
Q : Est-il possible d’avoir une configuration multi-nœuds ?
R : Oui, c’est possible. En modifiant compose-opensearch3.yaml pour définir plusieurs nœuds OpenSearch, vous pouvez créer une configuration en cluster. Cependant, pour les environnements de production, nous recommandons l’utilisation d’outils d’orchestration tels que Kubernetes.
Comment appliquer les fichiers de configuration
Les paramètres détaillés de Fess sont écrits dans le fichier
fess_config.properties. Dans les environnements Docker, il existe les méthodes suivantes pour appliquer ces paramètres de fichier.Méthode 1 : Monter le fichier de configuration
En montant un répertoire contenant
fess_config.propertieset d’autres fichiers de configuration, vous pouvez appliquer les paramètres modifiés côté hôte au conteneur.Créez un répertoire de configuration sur l’hôte
Obtenez le modèle du fichier de configuration (première fois uniquement)
Modifiez
/path/to/fess-config/fess_config.propertieset ajoutez les paramètres nécessairesAjoutez le montage de volume à
compose.yamlDémarrez le conteneur
Note
fess_config.propertiescontient les paramètres de recherche, les paramètres du crawler, les paramètres de messagerie et d’autres configurations système. Même si vous supprimez les conteneurs avecdocker compose down, les fichiers côté hôte sont conservés.Méthode 2 : Configuration via propriétés système
Vous pouvez remplacer les éléments de configuration dans
fess_config.propertiesvia des variables d’environnement utilisant des propriétés système.Les éléments de configuration écrits dans
fess_config.properties(par exemple,crawler.document.cache.enabled=false) peuvent être spécifiés au format-Dfess.config.nom_paramètre=valeur.Ajoutez
FESS_JAVA_OPTSaux variables d’environnement danscompose.yamlNote
La partie suivant
-Dfess.config.correspond au nom de l’élément de configuration dansfess_config.properties.