Strona główna
» Jak
»
Połącz Nextcloud z samodzielnie hostowanym kontenerem Collabora CODE
Połącz Nextcloud z samodzielnie hostowanym kontenerem Collabora CODE
Aby połączyć Nextcloud z samodzielnie hostowanym kontenerem Collabora Online Development Edition (CODE), uruchom CODE na osobnej nazwie hosta, umieść go za HTTPS i wprowadź jego publiczny adres URL w Nextcloud Office. Kontener CODE musi również zezwalać na pochodzenie witryny Nextcloud jako hosta WOPI. W poniższym przykładzie Nextcloud to , cloud.example.coma Collabora to office.example.com; zastąp oba prawdziwymi nazwami hostów.
Wiersz terminala z poleceniem służącym do pobrania obrazu Collabora CODE.
Co powinno być gotowe zanim zaczniesz?
Potrzebujesz działającej instalacji Nextcloud, hosta Docker, na którym można uruchomić kontener CODE, rekordów DNS dla nazw hostów Nextcloud i Collabora oraz ważnych certyfikatów HTTPS dla obu witryn publicznych. Host Nextcloud i serwer Collabora muszą mieć możliwość komunikacji sieciowej. Dedykowany serwer Collabora ma na celu zwiększenie wydajności w porównaniu z wbudowaną opcją CODE; jest to nadal wersja rozwojowa, dlatego przed użyciem go w większym lub krytycznym dla firmy wdrożeniu należy sprawdzić aktualne warunki i wytyczne dotyczące wersji Collabora.
W tym przewodniku zakłada się, że serwer proxy odwrotny działa na hoście Dockera i przekierowuje ruch HTTPS do office.example.comlokalnego portu kontenera. Jeśli serwer proxy działa w innym kontenerze lub na innej maszynie, nie kopiuj mapowania portów pętli zwrotnej bez zmian: użyj prywatnej sieci Dockera lub prywatnego adresu hosta, do którego serwer proxy może dotrzeć, i zabezpiecz zaporą sieciową, aby nie był on publicznie widoczny.
1. Uruchom kontener CODE
Najpierw pobierz obraz i uruchom kontener. W ustawieniach aliasu użyj publicznego źródła NextCloud, w tym protokołu i portu. Nie umieszczaj tam adresu URL Collabora. Przykład instalacji Dockera w NextCloud wykorzystuje następujący wzorzec:
Powiązanie pętli zwrotnej oznacza, że port 9980 jest dostępny tylko z hosta Dockera, na przykład przez odwrotny serwer proxy na tym samym hoście. Serwer proxy zapewnia przeglądarkom i NextCloud publiczny punkt końcowy HTTPS, jednocześnie zachowując prywatność portu kontenera. Jeśli NextCloud jest obsługiwany na niestandardowym porcie lub przez inną publiczną nazwę hosta, alias musi być zgodny z nazwą, z której faktycznie korzystają użytkownicy źródłowi. Jeśli masz wiele instancji NextCloud, skonfiguruj każdy dozwolony host WOPI, używając udokumentowanej składni Collabora, zamiast ogólnie zezwalać na dowolne domeny.
Powyższe polecenie jest zgodne z przykładem Dockera z podręcznika administratora NextCloud 35. Przed użyciem produkcyjnym zapoznaj się z aktualną dokumentacją obrazu CODE i wybierz politykę aktualizacji wersji/tagów, która odpowiada Twojemu procesowi konserwacji. Domyślne odniesienie do obrazu może ulec zmianie w miarę publikowania wersji; planuj aktualizacje, monitoruj kontener i ponownie testuj edycję dokumentów po aktualizacjach.
Widok Administracja aplikacjami pokazuje, że NextCloud Office jest włączony przed konfiguracją serwera.
2. Umieść kontener za odwrotnym serwerem proxy HTTPS
Skonfiguruj istniejący serwer proxy do obsługi https://office.example.comi przekazywania żądań do usługi CODE w systemie 127.0.0.1:9980. Użyj aktualnej konfiguracji odwrotnego serwera proxy Collabora dla swojego oprogramowania proxy. Serwer proxy musi zachować wymagane ścieżki i obsługiwać aktualizacje WebSocket; sesja przeglądarki edytora od nich zależy. Przykład Nextcloud Docker zawiera ścieżki dla /browser, /hosting/discovery, /hosting/capabilitiesi /cool, w tym punkt końcowy WebSocket. Niektóre integracje wykorzystują również /loolścieżkę zgodności.
Nie traktuj pomyślnego załadowania strony głównej jako dowodu na to, że serwer proxy jest kompletny. Serwer proxy, który obsługuje zwykłe żądania HTTPS, ale nie aktualizuje połączeń WebSocket, może wyświetlić ramkę edytora, a następnie pozostawić ją wczytaną lub rozłączoną. Użyj ważnego certyfikatu publicznego dla nazwy hosta Collabora. Pozostaw port 9980 zamknięty dla publicznego internetu, gdy serwer proxy ma być jedynym punktem wejścia.
3. Włącz NextCloud Office i wprowadź adres URL serwera
Wybierz opcję serwera zewnętrznego i wprowadź publiczny adres URL HTTPS dla Collabora.
W NextCloud otwórz Aplikacje i zainstaluj lub włącz NextCloud Office ( richdocumentsintegrację). Następnie otwórz Ustawienia administracyjne → Office , wybierz opcję zewnętrznego serwera Collabora i wpisz https://office.example.com. Zapisz ustawienie. Użyj publicznego adresu URL, a nie localhost:9980: serwer NextCloud i przeglądarki użytkowników muszą rozpoznawać ten sam zewnętrzny punkt końcowy Collabora.
W podręczniku administracyjnym Nextcloud podano, że skonfigurowany adres URL serwera powinien używać tego samego protokołu, co instalacja Collabora, i zaleca się użycie protokołu HTTPS. Po zapisaniu, Nextcloud może wyświetlić stan łączności lub wykrywania. Jeśli zgłosi problem z certyfikatem, DNS lub WOPI, należy rozwiązać ten konkretny problem przed próbą otwarcia pliku.
4. Sprawdź ścieżkę WOPI i otwórz dokument testowy
WOPI to protokół używany przez Nextcloud do zapewnienia aplikacji Collabora kontrolowanego dostępu do dokumentu. W ustawieniach administracyjnych pakietu Office w Nextcloud sprawdź listę dozwolonych żądań WOPI i ogranicz żądania do adresów IP, z których usługa Collabora dociera do Nextcloud. Skonfiguruj również aplikację Collabora tak, aby akceptowała tylko docelowy host WOPI. Dokładny adres może się różnić w przypadku kontenerów, NAT lub odwrotnego proxy, dlatego zamiast zgadywać, użyj adresu źródłowego, który Nextcloud faktycznie widzi w swoich logach.
Otwarty dokument z paskiem narzędzi do edycji stanowi ostatnią wizualną kontrolę reakcji integracji pakietu Office.
Aby sprawdzić działanie, zaloguj się jako zwykły użytkownik Nextcloud, utwórz lub prześlij mały plik DOCX lub ODT i otwórz go w Plikach. Sprawdź, czy edytor się załadował, wprowadź nieszkodliwą zmianę, poczekaj na wskaźnik zapisu, zamknij dokument, a następnie otwórz go ponownie i sprawdź, czy zmiana została zachowana. Przetestuj dla każdego typu pliku i grupy użytkowników, które mają znaczenie dla wdrożenia; pomyślny test DOCX nie gwarantuje, że wszystkie formaty lub ścieżki uprawnień są skonfigurowane.
Co należy sprawdzić, jeśli edytor nie chce się otworzyć?
Błąd wykrywania lub połączenia: Sprawdź, czy jest on office.example.comrozwiązywany przez serwer Nextcloud i przeglądarkę, czy jego certyfikat jest ważny i czy serwer proxy wysyła dane /hosting/discoverydo CODE.
Ciągłe ładowanie lub rozłączony edytor: Sprawdź obsługę aktualizacji WebSocket na odwrotnym serwerze proxy oraz /cooltrasy. Przejrzyj logi serwera proxy i kontenera pod kątem odrzuconych żądań.
Odrzucony host WOPI: Porównaj skonfigurowany host aliasgroup1z dokładnym publicznym źródłem Nextcloud, w tym schematem i portem. Sprawdź listę dozwolonych hostów WOPI Nextcloud i porównaj ją z adresem IP źródła Collabora widocznym dla Nextcloud.
Działa na hoście, ale nie w NextCloud: Przetestuj łączność między serwerem NextCloud a publicznym adresem URL Collabora. Wewnętrzna nazwa hosta kontenera lub adres lokalny hosta Dockera nie są automatycznie dostępne z każdego innego kontenera.
Ostrzeżenie dotyczące certyfikatu: Napraw niezgodność łańcucha certyfikatu lub nazwy hosta. Wyłączenie weryfikacji certyfikatu może ukryć przyczynę i osłabić połączenie.