Wyszukiwanie w witrynie

Jak łatwo zintegrować OnlyOffice i NextCloud za pomocą Dockera


Jak zapewne wiesz, możesz użyć WordPressa do skonfigurowania strony internetowej lub bloga, a OnlyOffice to samodzielny serwer dokumentów biurowych online. W tym samouczku dowiesz się, jak zintegrować OnlyOffice z WordPress, dzięki czemu będziesz mógł edytować dokumenty biurowe (DOCX, XLSX, PPTX itp.) bezpośrednio z interfejsu internetowego WordPress.

Funkcja aplikacji integracyjnej WordPress OnlyOffice

  • W pełni funkcjonalny edytor tekstu jest dostępny online ze wszystkimi funkcjami edytorów komputerowych.
  • 100% wierności przeglądania, konwersji, drukowania i paginacji.
  • Umożliwia dodawanie linków, tabel, wykresów, wstawianie obrazów, automatycznych kształtów, formuł, obiektów tekstowych i manipulowanie nimi, tworzenie list punktowanych lub numerowanych.
  • Obsługuje edycję i zapisywanie plików DOCX, XLSX, PPTX, TXT. Możesz także zapisać plik w innych formatach, takich jak ODT, ODS, ODP, DOC, XLS, PPT, PPS, EPUB, RTF, HTML, HTM.
  • W pełni kompatybilny z formatami Office Open XML: .docx, .xlsx, .pptx
  • Automatycznie zapisuj swoje pliki, aby nie stracić swojej pracy.
  • Obsługuje znaki łacińskie, CJK (chiński, japoński, koreański).

Warunki wstępne

Serwer dokumentów OnlyOffice wymaga co najmniej 2-rdzeniowego procesora i 2 GB pamięci RAM. Aby współpraca z WordPressem przebiegała sprawnie, polecam używać serwera z 4-rdzeniowym procesorem i 4GB RAM. Możesz kupić potężny VPS od Contabo za bardzo niską cenę. Jeśli jest wielu użytkowników, powinieneś rozważyć aktualizację specyfikacji serwera.

Aby ukończyć ten przewodnik, musisz mieć działający serwer WordPress. Jeśli jeszcze tego nie zrobiłeś, przeczytaj poniższy artykuł, aby najpierw skonfigurować serwer WordPress.

  • Zainstaluj WordPress na Ubuntu z Nginx (stos LEMP)

Następnie przeczytaj poniższe instrukcje, aby zintegrować OnlyOffice i WordPress. Serwer dokumentów OnlyOffice i serwer WordPress można zainstalować na dwóch różnych hostach.

Zacznijmy.

Krok 1: zainstaluj serwer dokumentów OnlyOffice na Ubuntu

Serwer dokumentów OnlyOffice zależy od PostgreSQL, Node.js, Redis Server, serwera RabbitMQ i Nginx. Poniższe kroki są testowane na serwerze Ubuntu 22.04, ale powinny mieć również zastosowanie do dystrybucji Linuksa z rodziny Debian.

Zainstaluj PostgreSQL na Ubuntu

PostgreSQL jest dostępny z domyślnego repozytorium Ubuntu. Zespół PostgreSQL zawsze stara się wprowadzać ulepszenia wydajności w każdej nowej wersji. Uruchom następujące polecenia, aby zainstalować najnowszą wersję PostgreSQL z repozytorium postgresql.org.

echo "deb [signed-by=/etc/apt/keyrings/postgresql.asc] http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list

sudo mkdir -p /etc/apt/keyrings/

wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/keyrings/postgresql.asc

sudo apt update

sudo apt install -y postgresql postgresql-contrib postgresql-15 postgresql-client-15

Następnie utwórz bazę danych onlyoffice.

sudo -i -u postgres psql -c "CREATE DATABASE onlyoffice;"

Utwórz użytkownika onlyoffice.

sudo -i -u postgres psql -c "CREATE USER onlyoffice WITH password 'onlyoffice';"

Dać pozwolenie.

sudo -i -u postgres psql -c "GRANT ALL privileges ON DATABASE onlyoffice TO onlyoffice;"

Uwaga: zarówno nazwa użytkownika, jak i hasło muszą mieć wartość onlyoffice.

Zainstaluj NodeJS z oficjalnego repozytorium

Serwer dokumentów OnlyOffice wymaga wersji nodejs 14.0+, ale wersja w repozytorium Ubuntu jest nieaktualna, dlatego będziemy musieli zainstalować Node.js z repozytorium nadrzędnego.

Dodaj repozytorium Node.js.

curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash -

Zainstaluj Node.js.

sudo apt install nodejs -y

Sprawdź wersję Node.js.

node -v

Przykładowe wyjście:

v14.21.1

Zainstaluj serwer Redis i Rabbitmq

sudo apt install redis-server rabbitmq-server

Sprawdź ich stan.

systemctl status redis-server

systemctl status rabbitmq-server

Powinieneś zobaczyć, że są aktywne (działają). Jeśli nie udało się uruchomić rabbitmq-server, dzieje się tak głównie z powodu małej ilości pamięci na komputerze lub nieprawidłowej nazwy hosta. Serwer Redis nasłuchuje na 127.0.0.1:6379. RabbitMQ nasłuchuje na 0.0.0.0:25672 i 0.0.0.0:4369

Zainstaluj serwer dokumentów OnlyOffice

Dodaj repozytorium OnlyOffice za pomocą następującego polecenia. (Być może zastanawiasz się, czy można używać repozytorium ścistego Debiana na Ubuntu. Nie martw się. To repozytorium OnlyOffice jest przeznaczone dla wszystkich wydań Debiana i Ubuntu.)

echo "deb http://download.onlyoffice.com/repo/debian squeeze main" | sudo tee /etc/apt/sources.list.d/onlyoffice.list

Importuj klucz publiczny OnlyOffice.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys CB2DE8E5

Zaktualizuj indeks pakietu lokalnego i zainstaluj serwer dokumentów OnlyOffice. Pamiętaj, że pakiet onlyoffice-documentserver zainstaluje nginx-extras jako zależność, więc jeśli działa serwer WWW Apache, musisz go najpierw zatrzymać.

sudo apt update

sudo apt install onlyoffice-documentserver

Podczas procesu instalacji zostaniesz poproszony o podanie hasła PostgreSQL tylko dla biura. Wpisz „onlyoffice” (bez cudzysłowów).

Aby zainstalować podstawowe czcionki TrueType firmy Microsoft, należy także zaakceptować postanowienia licencyjne firmy Microsoft.

Blok serwera Nginx zostanie zainstalowany jako /etc/nginx/conf.d/ds.conf. (W rzeczywistości jest to dowiązanie symboliczne do /etc/onlyoffice/documentserver/nginx/ds.conf.) Serwer dokumentów OnlyOffice to aplikacja internetowa nodejs, a Nginx działa jako odwrotne proxy. /var/www/onlyoffice/documentserver/ to główny katalog sieciowy.

Po zakończeniu instalacji wprowadź publiczny adres IP swojego serwera w przeglądarce internetowej. Powinieneś zobaczyć komunikat „Zainstalowano wersję społecznościową Dokumentów ONLYOFFICE”

Aby sprawdzić numer wersji serwera dokumentów, możesz użyć następującego polecenia.

apt search onlyoffice-documentserver

Przykładowe wyjście.

onlyoffice-documentserver/squeeze,now 7.2.1-23 amd64 [installed]
  Online editors for text documents, spreadsheets, and presentations

Jeśli podczas instalacji napotkasz następujący błąd, może to oznaczać błąd w plikach konfiguracyjnych Nginx. Aby się dowiedzieć, uruchom sudo nginx -t.

dpkg: error processing package onlyoffice-documentserver (--configure):
 installed onlyoffice-documentserver package post-installation script subprocess returned error exit status 1
Processing triggers for libc-bin (2.35-0ubuntu3.1) ...
Errors were encountered while processing:
 onlyoffice-documentserver
E: Sub-process /usr/bin/dpkg returned an error code (1)

Krok 2: Włączanie protokołu HTTPS dla serwera dokumentów

Aby połączyć WordPress z serwerem dokumentów OnlyOffice, ten ostatni musi działać w trybie HTTPS (zarówno serwer WordPress, jak i przeglądarki użytkownika będą musiały nawiązać kontakt z serwerem dokumentów). Poniższe kroki pokazują, jak uzyskać i zainstalować certyfikat Let's Encrypt TLS.

Najpierw musimy edytować plik bloku serwera OnlyOffice Nginx.

sudo nano /etc/nginx/conf.d/ds.conf

Dodajemy dyrektywę nazwa_serwera, jak poniżej. Nie zapomnij ustawić rekordu DNS A dla onlyoffice.your-domain.com.

include /etc/nginx/includes/http-common.conf;
server {
  listen 0.0.0.0:80;
  listen [::]:80 default_server;
  server_tokens off;
  server_name onlyoffice.your-domain.com;

  include /etc/nginx/includes/ds-*.conf;
}

Zapisz i zamknij plik. Załaduj ponownie Nginx, aby zmiany zaczęły obowiązywać.

sudo systemctl reload nginx

Następnie zainstaluj klienta certbot (Let’s Encrypt) i wtyczkę Nginx.

sudo apt install certbot python3-certbot-nginx

Następnie uruchom następujące polecenie, aby uzyskać bezpłatny certyfikat TLS za pomocą wtyczki Nginx.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email  -d onlyoffice.your-domain.com

Gdzie :

  • --nginx: użyj wtyczki nginx.
  • --agree-tos: Zaakceptuj warunki korzystania z usługi.
  • --redirect: Wymusza przekierowanie HTTPS przez 301.
  • --hsts: Dodaj nagłówek Strict-Transport-Security do każdej odpowiedzi HTTP. Wymuszanie na przeglądarce ciągłego używania protokołu TLS dla domeny. Chroni przed usuwaniem SSL/TLS.
  • --staple-ocsp: Włącza zszywanie OCSP. Prawidłowa odpowiedź OCSP jest zszywana z certyfikatem oferowanym przez serwer podczas TLS.

W ciągu kilku sekund zobaczysz komunikat jak poniżej, co oznacza, że certyfikat TLS został pomyślnie uzyskany.

Odwiedź stronę https://onlyoffice.twoja-domena.com w przeglądarce internetowej, aby sprawdzić, czy serwer dokumentów OnlyOffice działa poprawnie w trybie HTTPS.

Krok 3: Zainstaluj aplikację integrującą WordPress OnlyOffice

Zaloguj się do interfejsu internetowego WordPress jako administrator i przejdź do strony Wtyczki, aby wyszukać wtyczkę OnlyOffice. Zainstaluj i aktywuj.

Następnie przejdź do strony Ustawienia WordPress, wybierz zakładkę ONLYOFFICE w lewym panelu i wprowadź nazwę domeny OnlyOffice (https://onlyoffice.example.com) w Adres usługi edycji dokumentu.

Po zapisaniu powyższego ustawienia możesz tworzyć nowe posty WordPress i wstawiać pliki .docx, .xlsx, .pptx do swoich postów WordPress.

Uwaga: OnlyOffice jest dostępny tylko w domyślnym edytorze bloków WordPress. Nie można go używać w klasycznym edytorze.

Instalowanie serwera dokumentów OnlyOffice i WordPress na tym samym hoście

Serwer dokumentów OnlyOffice używa Nginx jako serwera WWW.

Jeśli masz istniejący serwer WordPress działający z Nginx, instalacja OnlyOffice na tym samym komputerze nie spowoduje żadnych uszkodzeń serwera WordPress. Usunie nginx-core i zainstaluje pakiet nginx-extras, więc będzie trochę przestoju, ale Twoje konfiguracje pozostaną nienaruszone.

Jeśli masz istniejący serwer WordPress działający z serwerem WWW Apache i chcesz zainstalować OnlyOffice na tym samym komputerze, masz dwie możliwości:

  1. Zatrzymaj/usuń Apache, użyj Nginx jako serwera WWW zarówno dla WordPress, jak i OnlyOffice. W tym samouczku możesz użyć konfiguracji WordPress Nginx.
  2. Skonfiguruj Nginx jako odwrotne proxy dla Apache.

Jak uaktualnić serwer dokumentów OnlyOffice

Kiedy pojawi się nowa wersja serwera dokumentów OnlyOffice, wystarczy użyć menedżera pakietów apt, aby dokonać aktualizacji do nowej wersji.

sudo apt update;sudo apt upgrade

Pamiętaj, że nowa wersja zastąpi Twoje dostosowania w pliku /etc/nginx/conf.d/ds.conf. Zalecam utworzenie kopii zapasowej tego pliku za pomocą następującego polecenia, dzięki czemu będziesz mógł łatwo przywrócić niestandardowe konfiguracje.

cat /etc/nginx/conf.d/ds.conf | sudo tee /etc/nginx/conf.d/ds.conf.backup

Podsumowanie

Mam nadzieję, że ten samouczek pomógł Ci w integracji OnlyOffice z WordPress. Jak zawsze, jeśli uznałeś ten post za przydatny, zapisz się do naszego bezpłatnego biuletynu. Możesz także śledzić nas na Google+, Twitterze lub polubić naszą stronę na Facebooku.

Powiązane artykuły