Jak skonfigurować Nextcloud Office z CODE Docker w 10 minut

Aktualna uwaga na rok 2026: Dokumentacja Nextcloud 35 oddziela teraz pakiet Nextcloud Office , oparty na platformie Euro-Office, od Collabora Online , który pozostaje wspieraną alternatywą i nadal może być hostowany samodzielnie na oficjalnym obrazie CODE Docker. W niniejszym przewodniku wykorzystano zewnętrzną ścieżkę Collabora/CODE. Nazewnictwo ma znaczenie, ponieważ starsze przewodniki często opisują CODE jako jedyny serwer za „Nextcloud Office”. Przed zastosowaniem instrukcji opracowanych dla starszych wersji zapoznaj się z aktualnym omówieniem pakietu Nextcloud Office .

Jeśli Twoja witryna Nextcloud działa już przez HTTPS, Docker jest zainstalowany i masz nazwę DNS, np. office.example.comgotową do obsługi Collabora, sama integracja może zostać ukończona w około 10 minut. Propagacja DNS, wydawanie certyfikatów, zmiany w zaporze sieciowej lub rozwiązywanie problemów z odwrotnym serwerem proxy mogą zająć więcej czasu i nie są uwzględnione w tym szacunku.

Czego potrzebujesz przed rozpoczęciem

Szybka ścieżka zakłada jedną istniejącą instancję Nextcloud, jeden host Linux z obsługą Dockera oraz dedykowaną nazwę hosta HTTPS dla CODE. Obecny przykład Dockera w Nextcloud zaleca osobną subdomenę i ważny certyfikat TLS. CODE nasłuchuje wewnętrznie na porcie 9980, podczas gdy odwrotny serwer proxy udostępnia go bezpiecznie przeglądarkom i Nextcloud.

  • Działający serwer Nextcloud dostępny pod adresem URL, takim jak https://cloud.example.com.
  • Docker Engine na hoście, na którym będzie uruchamiany KOD.
  • Rekord DNS, np. office.example.comwskazujący na odwrotny serwer proxy.
  • Ważny certyfikat HTTPS dla nazwy hosta biura.
  • Dostęp administratora do Nextcloud oraz dostęp root lub sudo do hosta Docker.

Aktualna dokumentacja instalacyjna Nextcloud podaje, że wbudowany serwer CODE jest najłatwiejszy do użytku osobistego lub w małych zespołach, ale zaleca dedykowaną instalację Collabora Online dla lepszej wydajności. Oficjalnym obrazem collabora/code w Docker Hub jest obraz widoczny poniżej.

Okno terminala pokazujące wynikową wersję Dockera i oficjalny obraz collabora/code, który jest pobierany.
Najpierw zweryfikuj Dockera, a następnie pobierz oficjalny obraz kodu Collabora. Dokładna wersja Dockera jest pokazana poglądowo; użyj aktualnie obsługiwanej wersji Dockera na swoim hoście.

Krok 1: Pobierz obraz CODE Docker

Na hoście Docker sprawdź, czy Docker jest dostępny i ściągnij oficjalny obraz:

docker --version
docker pull collabora/code:latest

Tag latestjest przydatny w przypadku krótkiego przewodnika konfiguracji, ponieważ Collabora często publikuje aktualizacje. W środowisku produkcyjnym rozważ przypięcie konkretnej przetestowanej wersji, a następnie zaplanuj przemyślane aktualizacje, zamiast pozwalać na nieoczekiwaną zmianę obrazu podczas przebudowy.

Krok 2: Uruchom KOD dla swojego hosta Nextcloud

Aktualny przykład Nextcloud Docker służy aliasgroup1do informowania CODE, który host Nextcloud może się z nim zintegrować. Zastąp przykładową nazwę hosta prawdziwym adresem URL Nextcloud:

docker run -t -d   --name collabora-code   -p 127.0.0.1:9980:9980   -e 'aliasgroup1=https://cloud.example.com:443'   --restart always   --cap-add MKNOD   collabora/code:latest

Powiązanie z 127.0.0.1zapobiega bezpośredniemu dostępowi portu 9980 do Internetu, gdy serwer proxy odwrotnego działa na tym samym serwerze. Jeśli serwer proxy działa na innym komputerze, zaprojektuj reguły sieciowe tak, aby tylko serwer proxy mógł uzyskać dostęp do CODE; nie publikuj po prostu portu 9980 dla wszystkich.

Okno terminala pokazujące kontener CODE uruchomiony na porcie localhost 9980 i wyświetlony przez docker ps.
Uruchom CODE na adresie 127.0.0.1:9980, gdy odwrotny serwer proxy na tym samym hoście zapewni publiczny punkt końcowy HTTPS.

Sprawdź, czy kontener jest uruchomiony:

docker ps --filter name=collabora-code
docker logs --tail 50 collabora-code

Krok 3: Umieść HTTPS i odwrotny serwer proxy przed KODEM

Nextcloud dokumentuje wymagane ścieżki Collabora jako /browser, /hosting/discovery, /hosting/capabilities, /cool/adminws, /cool, plus ruch WebSocket w /cool/.../ws. Dlatego ogólna konfiguracja „przekaż wszystko poza WebSocket” często powoduje otwarcie edytora, który następnie się rozłącza.

Edytor konfiguracji pokazujący trasy odwrotnego proxy dla przeglądarki, wykrywania hostingu, możliwości, funkcji i ścieżek WebSocket.
Twój odwrotny serwer proxy musi przekazywać punkty końcowe przeglądarki Collabora, Discovery, capabilities, /cool i WebSocket. Dopasuj protokół nadrzędny do trybu SSL kontenera CODE.

W przypadku Nginx poniższy, kompaktowy przykład zachowuje domyślny wewnętrzny protokół HTTPS w CODE i kończy publiczny protokół TLS w Nginx. Użyj własnych ścieżek certyfikatów:

server {
    listen 443 ssl http2;
    server_name office.example.com;
    ssl_certificate /etc/letsencrypt/live/office.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/office.example.com/privkey.pem;

    location ^~ /browser { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /hosting/discovery { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /hosting/capabilities { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /cool/adminws { proxy_pass https://127.0.0.1:9980; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ~ ^/cool/(.*)/ws$ { proxy_pass https://127.0.0.1:9980; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $host; proxy_ssl_verify off; }
    location ^~ /cool { proxy_pass https://127.0.0.1:9980; proxy_set_header Host $host; proxy_ssl_verify off; }
}

To celowo minimalny przykład routingu, a nie kompletna baza bezpieczeństwa Nginx. Jeśli uruchomisz CODE z wyłączonym wewnętrznym TLS, upstream stanie się tym samym http://127.0.0.1:9980i kontener musi być spójnie skonfigurowany. Nie należy mieszać celu proxy HTTP z kontenerem CODE, który nadal oczekuje na HTTPS.

Krok 4: Zweryfikuj publiczny punkt końcowy CODE

Zanim przejdziesz do ustawień Nextcloud, otwórz ten adres URL w przeglądarce:

https://office.example.com/hosting/discovery
Przeglądarka wyświetlająca odpowiedź XML odkrycia WOPI z hostingu odkrycia office.example.com.
Prawidłowa odpowiedź z /hosting/discovery to szybki sposób potwierdzenia, że ​​publiczny punkt końcowy CODE i odwrotny serwer proxy odpowiadają.

Powinieneś otrzymać kod XML wykrywania WOPI zamiast błędu proxy, ostrzeżenia o certyfikacie lub braku połączenia. Możesz również przetestować działanie z poziomu wiersza poleceń:

curl -fsS https://office.example.com/hosting/discovery | head

Jeśli to się nie powiedzie, najpierw napraw DNS, TLS, serwer proxy lub kontener. Połączenie NextCloud z uszkodzonym punktem końcowym to tylko kolejny etap rozwiązywania problemów.

Krok 5: Włącz integrację z biurem NextCloud

Zaloguj się do NextCloud jako administrator, otwórz Aplikacje , przejdź do sekcji Office i SMS i włącz aplikację integracji z Office dostępną dla Twojej instalacji. Aktualny przykład NextCloud Collabora Docker nadal zaleca administratorom zainstalowanie aplikacji „NextCloud Office”, a następnie skonfigurowanie serwera zewnętrznego w ustawieniach administracyjnych pakietu Office, mimo że przegląd NextCloud 35 rozróżnia teraz produkty Euro-Office i Collabora.

Strona aplikacji Nextcloud w kategorii Biuro i tekst z włączoną usługą Nextcloud Office.
Przed wprowadzeniem adresu zewnętrznego serwera CODE włącz aplikację integracji z biurem w NextCloud.

Jeśli Twoja wersja Nextcloud używa nieco innych etykiet, postępuj zgodnie z nazwami produktów wyświetlanymi w Twoim interfejsie administracyjnym, zamiast zakładać, że starszy zrzut ekranu jest dokładnie taki sam.

Krok 6: Skieruj Nextcloud na zewnętrzny serwer CODE

Otwórz Ustawienia administracyjne → Office . Wybierz opcję zewnętrznego serwera Collabora/Office i wprowadź:

https://office.example.com
Ekran administracyjny Nextcloud Office z polem adresu URL zewnętrznego serwera Collabora Online i wskaźnikiem pomyślnej dostępności.
Strona administracyjna pakietu Office to miejsce, w którym należy wprowadzić zewnętrzny adres URL Collabora po uzyskaniu dostępu do serwera proxy.

Zapisz ustawienia i poczekaj na sprawdzenie połączenia przez Nextcloud. Nextcloud zaleca używanie tego samego protokołu po obu stronach, preferując HTTPS. Pomyślne sprawdzenie oznacza, że ​​Nextcloud może dotrzeć do punktu końcowego Collabora, ale nie gwarantuje to jeszcze, że każda trasa WebSocket przeglądarki i każde żądanie WOPI będą działać podczas rzeczywistej sesji edycji.

Krok 7: Ogranicz żądania WOPI

Po nawiązaniu połączenia podstawowego należy doprecyzować konfigurację WOPI. Aktualny przewodnik konfiguracji Nextcloud zdecydowanie zaleca ograniczenie żądań WOPI do adresów IP serwerów Collabora, które mają żądać plików. W Ustawieniach administracji → Office , użyj pola „Lista dozwolonych żądań WOPI”, jeśli jest dostępne.

Strona administracyjna Nextcloud Office pokazująca adres URL serwera Collabora, status pomyślnego połączenia i pole listy dozwolonych poleceń WOPI.
Po nawiązaniu połączenia sprawdź listę dozwolonych adresów WOPI, tak aby tylko oczekiwane adresy serwerów Collabora mogły żądać plików.

To ważna kontrola bezpieczeństwa, ponieważ przepływ WOPI to sposób, w jaki Collabora pobiera i zapisuje dokumenty w imieniu użytkowników Nextcloud. Używaj adresów IP lub sieci, które faktycznie reprezentują ścieżkę serwera CODE, zgodnie z wymaganiami wdrożenia; nie wklejaj nazwy hosta do pola listy dozwolonych adresów IP tylko dlatego, że wygląda podobnie do pola adresu URL serwera. Zapoznaj się z konfiguracją Collabora i wskazówkami dotyczącymi WOPI w Nextcloud , aby poznać aktualne opcje.

Krok 8: Otwórz prawdziwy dokument i potwierdź zapisanie

Utwórz mały plik ODT lub DOCX w NextCloud, otwórz go, wpisz zdanie, zamknij edytor i ponownie otwórz plik. Sprawdza to cały łańcuch: przeglądarka → publiczny KOD, nazwa hosta → odwrotne proxy → KOD → żądanie WOPI do NextCloud → zapisz z powrotem do pamięci masowej.

Edytor dokumentów Collabora oparty na przeglądarce otwierany w Nextcloud z przykładowym dokumentem planu projektu.
Ostatni test jest praktyczny: utwórz lub otwórz dokument i sprawdź, czy edytor ładuje się, akceptuje zmiany i zapisuje je z powrotem w Nextcloud.

Konfiguracja nie kończy się tylko dlatego, że strona ustawień pakietu Office informuje, że serwer jest dostępny. Prawidłowy rezultat to załadowanie edytora bez ostrzeżenia o połączeniu, możliwość edycji dokumentu i zachowanie zapisanych zmian po ponownym otwarciu. Jeśli powłoka edytora ładuje się, ale edycja rozłącza się, należy najpierw skupić się na /cool/.../wsścieżce WebSocket. Jeśli edytor w ogóle nie może załadować pliku, należy sprawdzić logi CODE, logi Nextcloud, rozpoznawanie nazw DNS między serwerami oraz reguły listy dozwolonych WOPI.

Szybka lista kontrolna rozwiązywania problemów

ObjawPierwsza kontrola
NextCloud informuje, że serwer biurowy jest niedostępnyOtwórz /hosting/discoveryprzez HTTPS z hosta Nextcloud.
Przeglądarka otrzymuje 502 lub 504Sprawdź, czy kontener jest uruchomiony i czy serwer proxy może nawiązać połączenie 127.0.0.1:9980.
Edytor otwiera się, a następnie rozłączaSprawdź nagłówki aktualizacji WebSocket i /cool/(...)/wstrasę.
Błąd certyfikatuNapraw łańcuch certyfikatów publicznych i upewnij się, że skonfigurowany adres URL używa prawidłowej nazwy hosta.
Odmowa dostępu do WOPIPrzejrzyj listę dozwolonych poleceń WOPI w Nextcloud i dozwolony kod konfiguracji hosta Nextcloud.
Działa w jednej sieci, ale nie w innejSprawdź podzielony DNS, reguły zapory sieciowej i to, czy Nextcloud i CODE mogą wzajemnie rozwiązywać swoje publiczne nazwy.

Utrzymuj aktualność KOD-u, nie zamieniając aktualizacji w niespodzianki

Collabora regularnie publikuje aktualizacje CODE. Oficjalna strona Docker Hub prezentuje aktywnie utrzymywane tagi, a wskazówki dotyczące aktualizacji Nextcloud mówią, że wdrożenia Dockera są aktualizowane poprzez pobranie nowszego obrazu i ponowne utworzenie kontenera. W przypadku serwera domowego śledzenie latestmoże być uzasadnione. W przypadku zastosowań biznesowych należy przypiąć przetestowany tag, przeczytać informacje o wydaniu, wykonać kopię zapasową konfiguracji, a następnie przeprowadzić aktualizację w trakcie okresu konserwacji.

Należy również pamiętać o zakresie CODE. Docker Hub opisuje CODE jako edycję rozwojową skierowaną do użytkowników domowych, podczas gdy dokumentacja Nextcloud wskazuje na większe lub wrażliwe na niezawodność wdrożenia obsługiwane przez przedsiębiorstwa. 10-minutowa konfiguracja Dockera jest doskonała dla chmury osobistej, laboratorium lub małego zespołu, ale nie zastępuje planowania pojemności, monitorowania, tworzenia kopii zapasowych ani wsparcia dla przedsiębiorstw.

Wynik końcowy

Po uruchomieniu kontenera, prawidłowym proxy HTTPS, /hosting/discoveryodpowiedzi integracji Nextcloud https://office.example.com, wskazaniu na WOPI, ograniczeniu dostępu do WOPI oraz otwarciu i zapisaniu rzeczywistego dokumentu, integracja jest zakończona. Najważniejszym szczegółem nie jest liczba poleceń, ale utrzymanie spójności ścieżki sieciowej. Nextcloud, CODE, odwrotny proxy i przeglądarki użytkowników muszą być w stanie dotrzeć do oczekiwanych nazw hostów HTTPS za pomocą poprawnych tras WebSocket i WOPI.

Zostaw komentarz

Naprawianie udostępniania ekranu w Jitsi Meet na macOS Sonoma: sprawdzanie uprawnień i przeglądarki

Naprawianie udostępniania ekranu w Jitsi Meet na macOS Sonoma: sprawdzanie uprawnień i przeglądarki

Napraw udostępnianie ekranu w Jitsi Meet na macOS Sonoma: włącz odpowiednie uprawnienia przeglądarki, uruchom ją ponownie i zdiagnozuj problemy z selektorem lub spotkaniem.

Koniec cyklu życia Kopano Core: najlepsze alternatywy open source dla przedsiębiorstw

Koniec cyklu życia Kopano Core: najlepsze alternatywy open source dla przedsiębiorstw

Porównaj praktyczne alternatywy typu open source dla Kopano Core w zakresie poczty e-mail dla przedsiębiorstw i oprogramowania do pracy grupowej, w tym grommunio, SOGo, Zimbra, Nextcloud i Open-Xchange.

Rozwiązywanie problemów z dźwiękiem w pokojach przejściowych BigBlueButton: niezawodna ścieżka rozwiązywania problemów

Rozwiązywanie problemów z dźwiękiem w pokojach przejściowych BigBlueButton: niezawodna ścieżka rozwiązywania problemów

Napraw problem z dźwiękiem w pokoju przejściowym BigBlueButton, który się zawiesza lub nie łączy. Zdiagnozuj problemy z uprawnieniami przeglądarki, WebRTC, TURN, NAT, zaporą sieciową i mostem audio.

Napraw błąd logowania Zimbra „Konto jest zablokowane”: kroki dla użytkownika i administratora

Napraw błąd logowania Zimbra „Konto jest zablokowane”: kroki dla użytkownika i administratora

Rozwiąż błąd Zimbra „Konto jest zablokowane”: sprawdź status konta, odblokuj potwierdzoną blokadę, znajdź nieaktualne dane uwierzytelniające i zweryfikuj poprawkę.

Napraw wysokie zużycie pamięci bazy danych Matrix Synapse w PostgreSQL

Napraw wysokie zużycie pamięci bazy danych Matrix Synapse w PostgreSQL

Rozwiąż problem dużego wykorzystania pamięci przez PostgreSQL za pomocą Matrix Synapse, sprawdzając połączenia, dostrajając ustawienia puli i pamięci, odkurzając tabele i weryfikując wyniki.

Jak skonfigurować Nextcloud Office z CODE Docker w 10 minut

Jak skonfigurować Nextcloud Office z CODE Docker w 10 minut

Skonfiguruj zewnętrzny serwer Collabora CODE Docker dla Nextcloud w około 10 minut, korzystając z serwera proxy HTTPS, sprawdzania WOPI, wskazówek dotyczących bezpieczeństwa i rozwiązywania problemów.

Bezpiecznie napraw ostrzeżenie „AllowOverride All” w usłudze ownCloud Apache

Bezpiecznie napraw ostrzeżenie „AllowOverride All” w usłudze ownCloud Apache

Napraw ostrzeżenie ownCloud Apache AllowOverride All poprzez skonfigurowanie prawidłowego katalogu, przetestowanie Apache, bezpieczne ponowne załadowanie i sprawdzenie ochrony .htaccess.

Jak zamontować udział Samba/CIFS na serwerze ownCloud

Jak zamontować udział Samba/CIFS na serwerze ownCloud

Zamontuj udział Samba lub CIFS na serwerze ownCloud z obsługą pamięci zewnętrznej. Skonfiguruj poświadczenia SMB, ogranicz dostęp i zweryfikuj montaż.

Fix “App Couldn’t Be Installed Because Server Has No Internet” on Android

Fix “App Couldn’t Be Installed Because Server Has No Internet” on Android

Fix the Android app installation error by checking connectivity, Play Store cache, storage, device compatibility, and emulator DNS or proxy settings.

How to Back Up and Restore a Matrix Synapse PostgreSQL Database

How to Back Up and Restore a Matrix Synapse PostgreSQL Database

Back up and restore a Matrix Synapse PostgreSQL database with pg_dump and pg_restore. Protect one-time keys, create a clean target, and verify recovery.