Accueil
» Comment faire
»
Ajout de polices au serveur de documents ONLYOFFICE : Docker ou Linux ?
Ajout de polices au serveur de documents ONLYOFFICE : Docker ou Linux ?
Pour ajouter des polices personnalisées à ONLYOFFICE Document Server, placez les fichiers de polices sous licence dans un répertoire accessible par le serveur et exécutez la commande /usr/bin/documentserver-generate-allfonts.shappropriée. Pour les déploiements Docker, il est généralement préférable d'utiliser un répertoire de polices monté en mode liaison plutôt que de copier les fichiers dans un conteneur en cours d'exécution, car il est conservé même après la recréation du conteneur.
La méthode d'installation appropriée dépend de l'emplacement d'exécution d'ONLYOFFICE Docs, de la fréquence de sa reconstruction et de votre tolérance à une brève interruption de service pendant la mise à jour de son catalogue de polices.
La liste déroulante des polices de l'éditeur répertorie les familles disponibles ; les polices manquantes peuvent être remplacées par une police de substitution jusqu'à ce que le catalogue de polices du serveur soit mis à jour.
Choisissez une méthode d'installation de police
Méthode
Meilleure adaptation
Compromis
Montage de liaison Docker
Conteneurs de production gérés avec Docker Compose
Nécessite la modification de la configuration du conteneur et peut nécessiter une recréation
docker cpdans le conteneur en cours d'exécution
Test rapide ou ajout temporaire
Les fichiers peuvent disparaître lorsque ce conteneur est remplacé.
Installez les polices sur l'hôte Linux exécutant le package natif du serveur de documents.
Installation de type DEB/RPM sans Docker
Nécessite une administration au niveau du serveur et reste lié à cet hôte.
Préparez les fichiers de polices et confirmez le serveur cible.
1. Identifier le déploiement ONLYOFFICE actif
Exécutez la commande docker pssur l'hôte Docker si l'éditeur fonctionne dans des conteneurs. Trouvez le nom du conteneur du serveur de documents dans la NAMEScolonne ; les exemples ci-dessous utilisent « Document Serveronlyoffice-documentserver ». Remplacez cette valeur si la vôtre est différente. Une intégration Nextcloud ou ownCloud ne change généralement rien au fait que les polices doivent être installées sur le serveur ONLYOFFICE Docs, et non seulement sur le serveur de stockage ou sur l'ordinateur qui consulte le document.
docker ps
Repérez le conteneur du serveur de documents dans la liste Docker avant de copier les polices ou de régénérer le catalogue.
2. Collectez les fichiers de polices sous licence
Choisissez des familles de polices complètes et sous licence, incluant les graisses et les styles réellement utilisés dans vos documents. ONLYOFFICE répertorie les formats TrueType et OpenType, tels que ` TTF` .ttfet `OTF` .otf, ainsi que d'autres extensions de police prises en charge, dans sa documentation Linux . Pour un premier déploiement sans problème, utilisez des fichiers TTF ou OTF standard et vérifiez les conditions d'utilisation côté serveur et côté client dans la licence de la police.
Dans l'exemple Docker, préparez les fichiers /srv/onlyoffice/custom-fontssur l'hôte Docker. Les noms de fichiers donnés en exemple Inter-Regular.ttfsont Inter-Bold.ttfillustratifs ; utilisez les fichiers pour lesquels vous disposez des droits d'installation.
Exécutez ces commandes depuis le répertoire contenant les fichiers de polices. Vérifiez le contenu du dossier avant de continuer. Sur un système géré, adaptez les droits d'accès et les permissions à votre politique de sécurité plutôt que de rendre le dossier accessible en écriture à tous.
Conservez toutes les variantes de polices dans un répertoire dédié afin qu'elles puissent être montées dans le conteneur du serveur de documents.
Recommandé pour Docker : monter le répertoire des polices de manière permanente
3. Ajoutez un montage de liaison au service Compose existant
Dans le fichier Compose actuel, recherchez le service qui exécute l'image ONLYOFFICE Document Server. Ajoutez l'entrée suivante sous sa volumesliste existante ; conservez les autres volumes, ports, informations d'identification et variables d'environnement déjà configurés :
Le chemin source se trouve sur l'hôte Docker ; la destination est à l'intérieur du conteneur. Le :rosuffixe restreint les écritures du conteneur dans le répertoire des polices. Montez le customrépertoire dédié plutôt que de remplacer l' /usr/share/fontsarborescence entière, ce qui pourrait masquer les polices fournies par l'image. Le Dockerfile officiel d'ONLYOFFICE déclare le répertoire des polices TrueType personnalisées comme un volume dans ses étapes d'image Community et Enterprise.
Vérifiez la configuration Compose modifiée, puis appliquez-la docker compose up -ddepuis le répertoire du projet. Cette opération peut entraîner la recréation du service : planifiez la modification lorsque les éditeurs pourront fermer les documents en toute sécurité. Si vous utilisez un docker rundéploiement simple, ajoutez l’argument de lecture seule équivalent --mount type=bind,src=/srv/onlyoffice/custom-fonts,dst=/usr/share/fonts/truetype/custom,readonlylors de la recréation du conteneur.
Une entrée de volume dédiée en lecture seule permet de séparer les fichiers de polices personnalisés de l'image conteneur.
4. Vérifiez que le conteneur peut accéder aux fichiers de polices.
Une fois le service lancé, examinez le répertoire monté et, le cas échéant, la liste des polices affichée par fontconfig. Le nom de famille indiqué par fontconfig peut différer du nom du fichier.
Pour les polices Inter de l'exemple, la deuxième commande devrait afficher une famille correspondante si fontconfig les détecte. Si les fichiers existent mais que la famille n'apparaît pas, vérifiez les permissions et exécutez la commande docker exec onlyoffice-documentserver fc-cache -f, puis vérifiez fc-listà nouveau. La détection par fontconfig seule ne suffit pas à alimenter le menu de l'éditeur ONLYOFFICE.
La vérification de fontconfig permet de distinguer un fichier de police illisible ou manquant d'un catalogue de polices ONLYOFFICE obsolète.
5. Régénérer le catalogue de polices ONLYOFFICE
Une fois les fichiers présents dans le conteneur, exécutez le script de génération de polices du serveur de documents :
ONLYOFFICE utilise cette étape pour actualiser ses données et ressources de polices. Elle peut affecter les services d'édition actifs ; il est donc recommandé de l'exécuter pendant une période de maintenance appropriée. La variable d'environnement Docker documentée GENERATE_FONTSest également configurée par défaut pour truerégénérer les données de polices au démarrage du conteneur ; cela est utile après un redémarrage, mais ne remplace pas l'installation des fichiers dans un emplacement permanent.
Ne modifiez pas le mode de GENERATE_FONTSfonctionnement ni ne forcez un redémarrage dans le seul but de masquer un volume manquant. Vérifiez d'abord que les fichiers attendus sont bien montés.
Exécutez le script de génération de polices du serveur de documents une fois que le conteneur a accès aux nouveaux fichiers de polices.
Alternatives : copie Docker temporaire ou Linux natif
6. Utilisez une copie directe du conteneur pour un test de courte durée
Si vous ne pouvez pas modifier Compose immédiatement, copiez un fichier dans le conteneur actuel et reconstruisez le catalogue. Cette méthode, conforme à la documentation Docker d'ONLYOFFICE, évite de reconstruire le conteneur pour un test rapide.
Cette méthode est pratique pour le dépannage, mais moins fiable pour le déploiement. Une mise à jour d'image ou la création d'un nouveau conteneur peut supprimer le fichier copié ; le redémarrage du même conteneur ne revient pas à le recréer . Si la police est nécessaire pour la suite du travail, il est recommandé de promouvoir un test concluant vers un montage de liaison ou une image personnalisée gérée séparément.
7. Installez directement sur un serveur de documents Linux non conteneurisé.
Pour installer un paquet Linux natif, placez les fichiers dans le répertoire des polices système du serveur et exécutez le même script de régénération sur cet hôte. Cette commande ne doit pas être exécutée sur le poste de travail d'un utilisateur standard.
Cette approche conserve les fichiers de police dans l'installation Linux plutôt que dans un volume Docker. Toutefois, les administrateurs doivent les préserver dans la gestion de la configuration ou les sauvegardes lors de la reconstruction du serveur. Consultez la procédure officielle ONLYOFFICE pour Linux concernant le serveur installé par paquet. Si plusieurs nœuds de serveur de documents desservent vos rédacteurs, configurez la même famille de polices et ses variantes sur chaque nœud.
Sur un serveur de documents Linux natif, installez la police sur ce serveur et régénérez son catalogue de polices sans commandes Docker.
8. Vérifiez la police de caractères dans un document réel.
Ouvrez une nouvelle session d'édition dans l'application connectée au serveur de documents. Dans un fichier DOCX de test, sélectionnez la famille de polices installée dans le menu déroulant, puis saisissez une ligne de texte normal, une ligne de texte en gras et des caractères non anglais représentatifs si la police est multilingue. Enregistrez, fermez, rouvrez et exportez au format PDF. Comparez la largeur du texte, le retour à la ligne, la couverture des glyphes et les variantes gras/italique avec un document de référence.
Si une police est absente de la liste déroulante, vérifiez fc-listsuccessivement le chemin du serveur, le résultat de la commande et la commande de génération du catalogue. Si la famille apparaît mais que la mise en page est modifiée, assurez-vous que le document requiert bien la famille exacte et que les graisses nécessaires sont disponibles ; sinon, l’éditeur risque d’utiliser une autre police. L’installation d’une police sur l’ordinateur d’un utilisateur ne l’ajoute pas automatiquement au serveur.
Il existe une mise en garde spécifique à certaines versions de navigateur : les instructions d’ONLYOFFICE concernant les polices indiquent de vider le cache du navigateur et de rouvrir l’éditeur pour la version 8.1.3 ou antérieure . Cette étape supplémentaire n’est pas nécessaire pour les versions ultérieures. Si votre installation est plus ancienne, suivez cette procédure de vidage du cache avant d’envisager des causes plus complexes.
Vérifiez que la famille de polices apparaît bien dans le menu, puis rouvrez un document enregistré et comparez son habillage de ligne et ses glyphes rendus.
La correction est confirmée lorsque la famille de polices personnalisée reste sélectionnable après la réouverture de l'éditeur, que le document enregistré s'affiche correctement et, pour Docker, que les polices sont toujours présentes après la recréation du service à partir de la même configuration. Si l'une de ces vérifications échoue, examinez la couche concernée plutôt que de copier les polices à répétition dans le conteneur.