Accueil
» BUREAU MS
»
Comment ajouter des polices personnalisées à Collabora Online CODE Docker
Comment ajouter des polices personnalisées à Collabora Online CODE Docker
Pour qu'une police personnalisée soit disponible dans Collabora Online CODE (Collabora Online Development Edition) exécuté dans un conteneur Docker, les fichiers de police doivent être accessibles au conteneur Collabora lui-même. Les installer uniquement sur l'hôte Docker ou dans un conteneur Nextcloud distinct ne les rend pas disponibles sur le serveur du bureau. Pour un déploiement Compose unique, un montage de liaison en lecture seule est généralement l'option la plus simple ; une image personnalisée est plus facile à reproduire sur un parc géré, tandis que la configuration à distance des polices permet de centraliser leur diffusion si elle est sécurisée.
Les répertoires de polices exacts peuvent varier selon l'image et la version. Le déploiement Helm amont actuel de Collabora monte les polices personnalisées à la fois dans `/var/polices` /usr/share/fonts/customet /opt/cool/systemplate/usr/share/fonts/custom`/var/polices`. Cela constitue une référence utile pour ces deux emplacements, mais ne garantit pas leur présence pour chaque image Docker autonome. Vérifiez les chemins d'accès dans l'image que vous exécutez avant de déployer l'exemple ci-dessous.
Quelle méthode d'installation de polices convient le mieux à votre déploiement ?
Choisissez en fonction du nombre d'instances CODE que vous gérez, de la manière dont vous déployez les mises à jour et de votre capacité à exploiter un serveur de polices sécurisé.
Méthode
Meilleure adaptation
Compromis
Support de liaison en lecture seule
Un hôte Compose ou une petite installation
Facile à mettre à jour sans reconstruction, mais chaque hôte a besoin des mêmes fichiers et des chemins d'accès aux conteneurs compatibles.
Image Docker personnalisée
CI/CD, déploiements reproductibles ou plusieurs hôtes gérés
Les polices sont versionnées avec l'image, mais changer une police implique de la reconstruire et de la redéployer.
Configuration de police à distance
Plusieurs cas nécessitent un catalogue géré de manière centralisée
La distribution centralisée ajoute une dépendance au service et au réseau ; l’utilisation en production nécessite le protocole HTTPS et un renforcement opérationnel.
Si vous installez Collabora avec son chart Helm, vérifiez d'abord les deployment.customFontsparamètres de ce dernier : le chart d'origine propose déjà une option de montage pour les polices personnalisées. Pour une configuration Docker Compose autonome, poursuivez avec un montage de type bind si les chemins de vos images correspondent.
Avant de modifier Docker, que devez-vous vérifier ?
Format de police : utilisez les fichiers de police compatibles avec votre configuration Collabora. La documentation officielle du projet Collabora fontserver prend en charge les fichiers TrueType ( .ttf) et OpenType ( .otf).
Licence : Vérifiez que la licence de la police autorise son utilisation côté serveur et sa distribution à vos utilisateurs. Ne copiez pas les polices depuis un système d’exploitation de bureau, sauf si la licence l’autorise.
Nom de la famille : Le nom affiché dans le menu des polices provient des métadonnées internes de la police et peut différer de son nom de fichier. Testez en utilisant le nom de la famille, et non le nom du fichier.
Dans tous les cas : si un proxy redirige les utilisateurs vers plusieurs conteneurs Collabora, installez les mêmes fichiers de police sur chaque instance. Sinon, l’affichage d’un même document peut varier selon le serveur qui l’ouvre.
Chemins d'accès exacts aux images : vérifiez les répertoires et la configuration de démarrage de l'image en cours d'exécution. Ne réutilisez pas aveuglément d'anciens chemins d'accès, /opt/loolni ceux provenant d'un paquet non pertinent.
Créez un répertoire hôte, par exemple ./fontsà côté de votre fichier Compose, et placez-y les fichiers autorisés .ttf. .otfLimitez ce répertoire aux polices que vous souhaitez utiliser via Collabora.
Le dossier des polices côté hôte et le fichier Compose avant d'ajouter le répertoire au service Collabora.
Comment ajouter des polices avec Docker Compose ?
Ajoutez les deux entrées de volume en lecture seule à la volumesliste du service Collabora existant. Conservez l'image, les ports, les variables d'environnement et les autres paramètres actuels du service ; il s'agit d'un ajout, et non d'un remplacement du fichier Compose.
Le répertoire source à gauche se trouve sur l'hôte Docker. Les chemins à droite se trouvent à l'intérieur du conteneur. L' :roextension rend les fichiers accessibles en lecture seule depuis le conteneur. Ces chemins cibles suivent le modèle Helm amont actuel de Collabora ; pour une image Docker CODE autonome, vérifiez d'abord votre étiquette exacte. Si l'un des emplacements est absent ou si votre version utilise des répertoires différents, utilisez les chemins pris en charge par cette image au lieu de suivre cet exemple.
L'exemple de mappage de volumes envoie le même répertoire de polices hôtes aux deux emplacements de polices Collabora en amont.
Appliquez la modification Compose pendant une période calme, car la recréation du service Collabora peut interrompre les sessions d'édition en cours. Si votre service s'appelle collabora, exécutez :
docker compose up -d collabora
Utilisez le nom réel de votre service Compose s'il diffère. Évitez un redémarrage complet de la pile, sauf si d'autres services nécessitent également une modification de configuration.
Comment pouvez-vous confirmer que le conteneur peut accéder aux fichiers ?
Vérifiez d'abord que les répertoires montés contiennent les fichiers de police. Remplacez collaborapar le nom du conteneur utilisé dans votre configuration :
docker exec collabora ls /usr/share/fonts/custom
docker exec collabora ls /opt/cool/systemplate/usr/share/fonts/custom
Exemple de commande de vérification : lister les deux chemins montés dans le conteneur Collabora en cours d’exécution.
La visualisation des fichiers confirme les montages Docker, mais ne prouve pas que l'éditeur a chargé la police. Si l'image inclut les utilitaires Fontconfig, vous pouvez examiner les noms de familles de polices détectés fc-list, par exemple avec :
docker exec collabora fc-list : family file
Filtrez la sortie pour obtenir la famille de polices attendue à l'aide d'un outil disponible dans votre conteneur. Si cet outil fc-listn'est pas installé, n'ajoutez pas de paquets à un conteneur en cours d'exécution comme solution permanente ; vérifiez la configuration des polices de l'image ou utilisez une image personnalisée reproductible. Si les fichiers sont visibles mais non détectés, vérifiez les permissions, le format des fichiers, les métadonnées internes de la famille et les deux chemins de montage. Consultez ensuite les journaux pour connaître l'image et la version exactes que vous avez déployées.
Comment tester la police dans Collabora Online ?
Ouvrez ou créez un document de test via l'intégration normale qui lance votre éditeur Collabora.
Ouvrez le menu des familles de polices et recherchez le nom de famille interne de la police.
Sélectionnez-le, saisissez un court extrait, enregistrez, fermez et rouvrez le document.
Si votre déploiement comporte plusieurs instances Collabora, vérifiez le même document depuis un autre utilisateur ou navigateur.
L'exemple ci-dessous illustre le type de vérification attendu : une famille de polices apparaît dans le menu de l'éditeur. Il ne s'agit pas d'une capture d'écran d'un déploiement CODE en production, et votre barre d'outils peut varier selon la version ou l'intégration.
Exemple d'étape de vérification : vérifier que la famille de polices souhaitée apparaît bien dans le menu des polices de l'éditeur.
Si la famille de polices apparaît mais que le texte s'affiche avec une police de substitution, vérifiez que la police et son épaisseur sélectionnées existent (par exemple, normale et grasse), et assurez-vous que la police est présente dans le chemin système ainsi que dans le répertoire des polices général. Une entrée de menu ne garantit pas à elle seule que chaque style ou chaque serveur possède la police.
Quand un service d'images personnalisées ou de polices distantes est-il intéressant ?
Créer une image personnalisée pour la répétabilité
Un Dockerfile qui copie les fichiers de polices approuvés dans les répertoires utilisés par votre image CODE facilite la reproduction des déploiements : le résumé de l’image identifie à la fois la version du serveur et son jeu de polices. En revanche, chaque mise à jour d’une police ou de l’image de base nécessite une reconstruction, une analyse et un nouveau déploiement. Après chaque mise à jour de l’image de base, vérifiez les répertoires cibles et évitez de considérer une instruction de copie de polices comme universelle pour toutes les versions de CODE.
Utiliser la configuration de polices distante pour un catalogue partagé
Le projet fontserver de Collabora décrit la configuration de polices à distance et un catalogue JSON. Ses responsables indiquent que ce dépôt est destiné au développement et aux tests ; par conséquent, le serveur d'exemple ne doit pas être considéré comme un service prêt pour la production. En production, utilisez un point de terminaison HTTPS correctement maintenu, limitez et validez les polices qu'il propose, et tenez compte de la disponibilité du réseau et du comportement d'actualisation du cache. Ce choix peut réduire la gestion des fichiers par hôte, mais il ajoute un service dont la défaillance ou la dérive de configuration peut affecter la disponibilité des polices.
Pour un conteneur CODE géré avec Docker Compose, commencez par un montage de liaison en lecture seule : la restauration est simple et ne nécessite pas de compilation personnalisée. Pour un parc de conteneurs maintenu par CI/CD, privilégiez une image personnalisée si vous souhaitez que chaque déploiement intègre un jeu de polices explicite et vérifiable. Envisagez la configuration de polices à distance uniquement si la distribution centralisée présente un réel avantage opérationnel et si vous pouvez fournir un service HTTPS sécurisé et fiable. Dans tous les cas, vérifiez les chemins d'accès et testez la police dans un document réel après le déploiement ; la liste des polices de l'hôte ne suffit pas à garantir que Collabora l'a bien chargée.