Home
» Hoe
»
Verbind Nextcloud met een zelfgehoste CollaboraCODE-container.
Verbind Nextcloud met een zelfgehoste CollaboraCODE-container.
Om Nextcloud te verbinden met een zelfgehoste Collabora Online Development Edition (CODE)-container, moet u CODE op een aparte hostnaam uitvoeren, deze achter HTTPS plaatsen en de openbare URL ervan in Nextcloud Office invoeren. De CODE-container moet ook toestaan dat de Nextcloud-site als WOPI-host wordt gebruikt. In het onderstaande voorbeeld is Nextcloud cloud.example.comen Collabora office.example.com; vervang beide door uw daadwerkelijke hostnamen.
Een terminalprompt met het commando dat gebruikt is om de Collabora CODE-image te downloaden.
Wat moet je klaar hebben voordat je begint?
Je hebt een werkende Nextcloud-installatie nodig, een Docker-host die de CODE-container kan uitvoeren, DNS-records voor de Nextcloud- en Collabora-hostnamen en geldige HTTPS-certificaten voor beide openbare sites. De Nextcloud-host en de Collabora-server moeten elkaar via het netwerk kunnen bereiken. Een dedicated Collabora-server is bedoeld om de capaciteit te vergroten ten opzichte van de ingebouwde CODE-optie; het is echter nog steeds de ontwikkelingsversie, dus raadpleeg de actuele voorwaarden en release-richtlijnen van Collabora voordat je deze gebruikt voor een grotere of bedrijfskritische implementatie.
Deze handleiding gaat ervan uit dat er een reverse proxy op de Docker-host draait die HTTPS-verkeer doorstuurt office.example.comnaar de lokale poort van de container. Als uw proxy in een andere container of op een andere machine draait, kopieer dan de loopback-poorttoewijzing niet ongewijzigd: gebruik een privé Docker-netwerk of een privé hostadres dat de proxy kan bereiken, en beveilig de backend met een firewall zodat deze niet publiekelijk toegankelijk is.
1. Start de CODE-container
Download eerst de image en start een container. Gebruik in de alias-instellingen de openbare oorsprong van Nextcloud, inclusief protocol en poort. Voer daar niet de Collabora-URL in. Het Docker-installatievoorbeeld van Nextcloud gebruikt dit patroon:
De loopback-binding betekent dat poort 9980 alleen bereikbaar is vanaf de Docker-host, bijvoorbeeld via een reverse proxy op diezelfde host. De proxy biedt browsers en Nextcloud een openbaar HTTPS-eindpunt, terwijl de containerpoort privé blijft. Als Nextcloud op een niet-standaardpoort of via een andere openbare hostnaam wordt aangeboden, zorg er dan voor dat de alias overeenkomt met de oorsprong die gebruikers daadwerkelijk gebruiken. Als u meerdere Nextcloud-instanties hebt, configureer dan elke toegestane WOPI-host met behulp van de gedocumenteerde syntaxis van Collabora in plaats van willekeurige domeinen in het algemeen toe te staan.
Bovenstaande opdracht volgt het Docker-voorbeeld uit de Nextcloud 35-beheerhandleiding. Raadpleeg vóór gebruik in een productieomgeving de documentatie van de huidige CODE-image en kies een beleid voor release-/tagupdates dat aansluit bij uw onderhoudsproces. De standaardreferentie voor de image kan veranderen naarmate er nieuwe releases worden uitgebracht; plan updates, controleer de container en test het bewerken van documenten opnieuw na upgrades.
In de beheerdersweergave van de apps wordt Nextcloud Office als ingeschakeld weergegeven vóór de serverconfiguratie.
2. Plaats de container achter de HTTPS-reverseproxy.
Configureer uw bestaande proxy om https://office.example.comverzoeken naar de CODE-service op te verwerken en door te sturen 127.0.0.1:9980. Gebruik de huidige reverse-proxy-configuratie van Collabora voor uw proxysoftware. De proxy moet de vereiste paden behouden en WebSocket-upgrades ondersteunen; de browsersessie van de editor is hiervan afhankelijk. Het Nextcloud Docker-voorbeeld bevat routes voor /browser, /hosting/discovery, /hosting/capabilities, en /cool, inclusief het WebSocket-eindpunt. Sommige integraties gebruiken ook de compatibiliteitsroute /lool.
Beschouw een succesvolle startpagina-lading niet als bewijs dat de proxy volledig functioneert. Een proxy die gewone HTTPS-verzoeken afhandelt, maar WebSocket-verbindingen niet correct kan upgraden, kan het editorvenster wel weergeven, maar vervolgens blijven laden of de verbinding verbreken. Gebruik een geldig openbaar certificaat voor de Collabora-hostnaam. Houd poort 9980 gesloten voor het openbare internet wanneer de proxy bedoeld is als het enige toegangspunt.
3. Schakel Nextcloud Office in en voer de server-URL in.
Kies de optie voor een externe server en voer de openbare HTTPS-URL voor Collabora in.
Open in Nextcloud de app 'Apps' en installeer of activeer Nextcloud Office (de richdocumentsintegratie). Open vervolgens de beheerdersinstellingen → Office , kies de optie voor de externe Collabora-server en voer de URL in https://office.example.com. Sla de instelling op. Gebruik de openbare URL, niet de URL van de externe localhost:9980Collabora-server: de Nextcloud-server en de browsers van de gebruikers moeten hetzelfde externe Collabora-eindpunt kunnen herkennen.
Volgens de beheerdershandleiding van Nextcloud moet de geconfigureerde server-URL hetzelfde protocol gebruiken als de Collabora-installatie en wordt HTTPS aanbevolen. Na het opslaan kan Nextcloud een verbindings- of detectiestatus weergeven. Als er een probleem met een certificaat, DNS of WOPI wordt gemeld, los dit specifieke probleem dan op voordat u een bestand probeert te openen.
4. Controleer het WOPI-pad en open een testdocument.
WOPI is het protocol dat Nextcloud gebruikt om Collabora gecontroleerde toegang tot een document te geven. Controleer in de Office-beheerinstellingen van Nextcloud de lijst met toegestane WOPI-verzoeken en beperk verzoeken tot de IP-adressen van waaruit uw Collabora-service Nextcloud bereikt. Configureer Collabora ook om alleen de beoogde WOPI-host te accepteren. Het exacte adres kan verschillen wanneer containers, NAT of een reverse proxy betrokken zijn, dus gebruik het bronadres dat Nextcloud daadwerkelijk in de logboeken ziet in plaats van te gokken.
Een geopend document met een bewerkingswerkbalk is de laatste visuele controle of de Office-integratie correct werkt.
Voor een functionele controle meldt u zich aan als een normale Nextcloud-gebruiker, maakt u een klein DOCX- of ODT-bestand aan of uploadt u er een, en opent u het vanuit 'Bestanden'. Controleer of de editor laadt, breng een onschadelijke wijziging aan, wacht tot de opsla-indicator verschijnt, sluit het document en open het vervolgens opnieuw om te controleren of de wijziging is opgeslagen. Test met elk bestandstype en elke gebruikersgroep die relevant is voor uw implementatie; een succesvolle DOCX-test bewijst niet dat elk formaat of toegangspad correct is geconfigureerd.
Wat moet je controleren als de editor niet opent?
Ontdekkings- of verbindingsfout: Controleer of de office.example.comverbinding tot stand komt vanaf de Nextcloud-server en de browser, of het certificaat geldig is en of de proxy /hosting/discoverynaar CODE verzendt.
Eindeloos laden of een editor die niet werkt: controleer de afhandeling van WebSocket-upgrades door de reverse proxy en de /coolroutes. Bekijk de proxy- en containerlogboeken op geweigerde verzoeken.
WOPI-host geweigerd: Vergelijk de geconfigureerde host aliasgroup1met de exacte openbare Nextcloud-origin, inclusief schema en poort. Controleer de WOPI-toegangslijst van Nextcloud ten opzichte van het Collabora-bron-IP-adres dat zichtbaar is voor Nextcloud.
Werkt wel op de host, maar niet in Nextcloud: Test de connectiviteit van de Nextcloud-server naar de openbare Collabora-URL. De interne hostnaam van een container of het localhost-adres van de Docker-host is niet automatisch bereikbaar vanuit elke andere container.
Certificaatwaarschuwing: Corrigeer de inconsistentie in de certificaatketen of de hostnaam. Het uitschakelen van certificaatverificatie kan de oorzaak maskeren en de verbinding verzwakken.