Strona główna
» Jak
»
Dodawanie czcionek do serwera dokumentów ONLYOFFICE: Docker kontra Linux
Dodawanie czcionek do serwera dokumentów ONLYOFFICE: Docker kontra Linux
Aby dodać niestandardowe czcionki do serwera dokumentów ONLYOFFICE, umieść pliki licencjonowanych czcionek w katalogu dostępnym dla serwera i uruchom program /usr/bin/documentserver-generate-allfonts.sh. W przypadku wdrożeń Docker, katalog czcionek montowany metodą bind jest zazwyczaj lepszym rozwiązaniem niż kopiowanie plików do działającego kontenera, ponieważ nie ulega on odtworzeniu w kontenerze.
Właściwa metoda instalacji zależy od tego, gdzie działa ONLYOFFICE Docs, jak często go przebudowujesz i czy możesz zaakceptować krótką przerwę w działaniu usługi na czas odświeżenia katalogu czcionek.
Na liście rozwijanej czcionek edytora wyświetlana jest lista dostępnych rodzin czcionek. Brakujące czcionki można zastąpić zamiennikami do momentu zaktualizowania katalogu czcionek serwera.
Wybierz metodę instalacji czcionek
Metoda
Najlepiej dopasowane
Kompromis
Montowanie Dockera z powiązaniem
Kontenery produkcyjne zarządzane za pomocą Docker Compose
Wymaga edycji konfiguracji kontenera i może wymagać ponownego uruchomienia
docker cpdo działającego kontenera
Szybki test lub dodanie tymczasowe
Pliki mogą zniknąć, gdy kontener zostanie wymieniony
Zainstaluj czcionki na hoście Linux, na którym działa natywny pakiet Serwera dokumentów
Instalacja w stylu DEB/RPM bez Dockera
Wymaga administracji na poziomie serwera i pozostaje powiązany z tym hostem
Przygotuj pliki czcionek i potwierdź serwer docelowy
1. Zidentyfikuj aktywne wdrożenie ONLYOFFICE
Uruchom docker psna hoście Dockera, jeśli edytor działa w kontenerach. Znajdź nazwę kontenera Serwera Dokumentów w NAMESkolumnie; w poniższych przykładach użyto onlyoffice-documentserver. Zastąp tę wartość, jeśli Twoja jest inna. Integracja z NextCloud lub ownCloud zazwyczaj nie zmienia faktu, że czcionki muszą być zainstalowane na serwerze ONLYOFFICE Docs, a nie tylko na serwerze pamięci masowej lub komputerze wyświetlającym dokument.
docker ps
Przed skopiowaniem czcionek lub ponownym wygenerowaniem katalogu znajdź kontener Serwera dokumentów na liście Docker.
2. Zbierz pliki czcionek objętych licencją
Wybierz kompletne, odpowiednio licencjonowane rodziny czcionek, uwzględniające grubości i style, których faktycznie używają Twoje dokumenty. ONLYOFFICE wymienia formaty TrueType i OpenType, takie jak .ttfi .otf, a także inne obsługiwane rozszerzenia czcionek, w swojej dokumentacji czcionek dla systemu Linux . Aby zapewnić przewidywalność pierwszego wdrożenia, użyj zwykłych plików TTF lub OTF i zweryfikuj dozwolone użycie serwera i klienta w licencji czcionek.
W przykładzie z Dockerem, umieść pliki /srv/onlyoffice/custom-fontsna hoście Dockera. Przykładowe nazwy plików Inter-Regular.ttfi Inter-Bold.ttfmają charakter ilustracyjny; użyj plików, do których instalacji masz prawo.
Uruchom te polecenia z katalogu zawierającego pliki czcionek. Przed kontynuowaniem sprawdź zawartość folderu. W systemie zarządzanym dostosuj prawa własności i uprawnienia do polityki bezpieczeństwa, zamiast nadawać folderowi prawa zapisu dla wszystkich.
Przechowuj wszystkie warianty czcionek w jednym, dedykowanym katalogu, aby można je było zamontować w kontenerze Serwera dokumentów.
Zalecane dla Dockera: trwałe montowanie katalogu czcionek
3. Dodaj montowanie powiązania do istniejącej usługi Compose
W bieżącym pliku Compose znajdź usługę, która uruchamia obraz serwera dokumentów ONLYOFFICE. Dodaj następujący wpis do istniejącej volumeslisty; zachowaj pozostałe woluminy, porty, poświadczenia i zmienne środowiskowe, które zostały już skonfigurowane:
Ścieżka źródłowa znajduje się na hoście Dockera, a docelowa w kontenerze. :roSufiks ogranicza zapisy kontenera do katalogu czcionek. Montuj dedykowany customkatalog zamiast zastępować całe /usr/share/fontsdrzewo, co mogłoby ukryć czcionki dostarczone przez obraz. Oficjalny plik Dockerfile ONLYOFFICE deklaruje niestandardowy katalog czcionek TrueType jako wolumin w etapach obrazu Community i Enterprise.
Przejrzyj poprawioną konfigurację Compose, a następnie zastosuj ją docker compose up -dz katalogu projektu. To może ponownie utworzyć usługę: zaplanuj zmianę, kiedy redaktorzy będą mogli bezpiecznie zamykać dokumenty. Jeśli używasz prostego docker runwdrożenia, dodaj równoważny --mount type=bind,src=/srv/onlyoffice/custom-fonts,dst=/usr/share/fonts/truetype/custom,readonlyargument „read-only” podczas ponownego tworzenia kontenera.
Dedykowany wpis woluminu tylko do odczytu oddziela pliki czcionek niestandardowych od obrazu kontenera.
4. Sprawdź, czy kontener widzi pliki czcionek
Po uruchomieniu usługi sprawdź zamontowany katalog i, jeśli jest dostępny, listę fontconfig. Nazwa rodziny zgłoszona przez fontconfig może różnić się od nazwy pliku.
W przypadku przykładowych czcionek Inter, drugie polecenie powinno wyświetlić pasującą rodzinę, jeśli fontconfig je wykryje. Jeśli pliki istnieją, ale rodzina się nie pojawia, sprawdź uprawnienia i uruchom polecenie docker exec onlyoffice-documentserver fc-cache -f, a następnie sprawdź fc-listponownie. Samo wykrycie fontconfig nie wypełnia menu edytora ONLYOFFICE.
Sprawdzenie fontconfig pozwala oddzielić nieczytelny lub brakujący plik czcionki od nieaktualnego katalogu czcionek ONLYOFFICE.
5. Wygeneruj ponownie katalog czcionek ONLYOFFICE
Po umieszczeniu plików w kontenerze uruchom skrypt generujący czcionki na serwerze dokumentów:
ONLYOFFICE używa tego kroku do odświeżania danych wyboru czcionek i zasobów. Może to wpłynąć na aktywne usługi edytora, dlatego należy go uruchomić w odpowiednim okresie konserwacji. Udokumentowana zmienna środowiskowa Dockera GENERATE_FONTSrównież ma wartość domyślną true, co oznacza, że dane czcionek są ponownie generowane podczas uruchamiania kontenera. Jest to przydatne po ponownym uruchomieniu, ale nie zastępuje instalacji plików w stałej lokalizacji.
Nie zmieniaj GENERATE_FONTSani nie wymuszaj ponownego uruchomienia wyłącznie w celu zamaskowania brakującego woluminu. Najpierw sprawdź, czy oczekiwane pliki są rzeczywiście zamontowane.
Uruchom skrypt generowania czcionek na serwerze dokumentów po uzyskaniu przez kontener dostępu do nowych plików czcionek.
Alternatywy: tymczasowa kopia Dockera lub natywny Linux
6. Użyj bezpośredniej kopii kontenera do krótkotrwałego testu
Jeśli nie możesz od razu zmienić Compose, skopiuj plik do bieżącego kontenera i przebuduj katalog. Jest to zgodne z udokumentowanym podejściem Dockera w ONLYOFFICE i pozwala uniknąć przebudowy kontenera w celu szybkiego testu:
Jest to wygodne w rozwiązywaniu problemów, ale mniej niezawodne jako plan wdrożenia. Aktualizacja obrazu lub nowy kontener mogą usunąć skopiowany plik; ponowne uruchomienie tego samego kontenera nie jest tym samym, co odtworzenie . Przenieś pomyślnie zakończony test do montowania z powiązaniem lub osobno utrzymywanego obrazu niestandardowego, gdy czcionka jest potrzebna do bieżącej pracy.
7. Zainstaluj bezpośrednio na niekontenerowym serwerze dokumentów Linux
W przypadku instalacji natywnego pakietu Linux, należy umieścić pliki w katalogu czcionek systemowych serwera i uruchomić ten sam skrypt regenerujący na tym hoście. Nie jest to polecenie do uruchomienia na komputerze zwykłego użytkownika.
To podejście pozostawia pliki czcionek w instalacji Linuksa zamiast na woluminie Dockera, ale administratorzy muszą je zachować w zarządzaniu konfiguracją lub kopiach zapasowych podczas odbudowy hosta. Zapoznaj się z oficjalną procedurą ONLYOFFICE Linux dla serwera z zainstalowanym pakietem. Jeśli edytorzy korzystają z więcej niż jednego węzła serwera dokumentów, na każdym węźle należy skonfigurować tę samą rodzinę i warianty.
Na natywnym serwerze dokumentów Linux zainstaluj czcionkę na tym serwerze i ponownie wygeneruj jej katalog czcionek bez poleceń Dockera.
8. Sprawdź czcionkę w rzeczywistym dokumencie
Otwórz nową sesję edycji w aplikacji połączonej z Serwerem Dokumentów. W testowym pliku DOCX wybierz zainstalowaną rodzinę czcionek z listy rozwijanej, wprowadź wiersz tekstu normalnego, pogrubionego i reprezentatywne znaki spoza języka angielskiego, jeśli czcionka jest przeznaczona do użytku wielojęzycznego. Zapisz, zamknij, otwórz ponownie i wyeksportuj do pliku PDF. Porównaj szerokość tekstu, zawijanie wierszy, pokrycie glifów oraz warianty pogrubienia/kursywy ze znanym dokumentem referencyjnym.
Jeśli czcionka nie znajduje się na liście rozwijanej, sprawdź ścieżkę serwera, dane wyjściowe polecenia fc-listoraz polecenie generowania katalogu (w tej kolejności). Jeśli rodzina jest widoczna, ale układ się zmienia, sprawdź, czy dokument żąda dokładnej rodziny i czy istnieją wymagane grubości; w przeciwnym razie edytor może podmienić czcionkę na inną. Samo zainstalowanie czcionki na komputerze użytkownika nie powoduje jej dodania do serwera.
Istnieje jedno zastrzeżenie dotyczące konkretnej wersji przeglądarki: instrukcje dotyczące czcionek w ONLYOFFICE zalecają wyczyszczenie pamięci podręcznej przeglądarki i ponowne otwarcie edytora w wersji 8.1.3 lub starszej . W nowszych wersjach ten dodatkowy krok nie jest wymagany. Jeśli Twoja instalacja jest starsza, skorzystaj z udokumentowanego kroku dotyczącego pamięci podręcznej przed zbadaniem bardziej złożonych przyczyn.
Sprawdź, czy rodzina czcionek jest widoczna w menu, a następnie otwórz ponownie zapisany dokument i porównaj sposób zawijania wierszy oraz renderowane glify.
Poprawkę potwierdza się, gdy rodzina niestandardowa pozostaje dostępna do wyboru po ponownym otwarciu edytora, zapisany dokument renderuje się poprawnie, a – w przypadku Dockera – czcionki nadal istnieją po ponownym utworzeniu usługi z tej samej konfiguracji. Jeśli jedno z tych sprawdzeń się nie powiedzie, należy zbadać tę warstwę, zamiast wielokrotnie kopiować czcionki do kontenera.