Implementeer Collabora CODE op Kubernetes met Helm

Op 10 oktober 2026 vermeldt de upstream pakketregistratie chartversie 1.3.0 als de meest recente release. Het installeren van de chart is slechts een onderdeel van een werkende implementatie. Je hebt ook een openbare Collabora-hostnaam nodig, een geldige WOPI-whitelist-vermelding voor de documentopslaghost en een ingress-configuratie die verzoeken voor elk document binnen dezelfde pod houdt. De upstream pakketregistratie vermeldt chartversie 1.3.0 op het moment van schrijven; controleer de repository vóór de installatie, omdat de Helm-chartversie en de CODE-containerimageversie afzonderlijke waarden zijn.

Deze procedure maakt gebruik van de officiële collabora/collabora-onlinechart en een NGINX Ingress Controller. De README van de chart bevat ook HAProxy-voorbeelden; ingress-annotaties zijn controllerspecifiek, dus gebruik het voorbeeld voor uw geïnstalleerde controller in plaats van annotaties te combineren.

Wat moet je als eerste voorbereiden?

  • Een Kubernetes-cluster met de juiste machtigingen om een ​​namespace, Deployment, Service en Ingress te creëren.
  • Helm 3 en een geïnstalleerde ingress controller die HTTPS kan bieden voor een hostnaam zoals office.example.com.
  • De openbare hostnaam van de WOPI-client, zoals Nextcloud of Seafile. Dit is de host die Collabora moet toestaan; het is niet de hostnaam van Collabora zelf.
  • Een Kubernetes Secret voor de inloggegevens van de Collabora-beheerconsole. Bewaar het voorbeeldwachtwoord van de grafiek niet en sla geen echt wachtwoord op in een waardenbestand.

1. Voeg de officiële grafiekrepository toe en inspecteer de release.

Collabora publiceert de grafiek vanuit de online repository van het project. Voeg de grafiek toe, vernieuw de lokale index en controleer de metadata en standaardwaarden voordat u deze installeert.

helm repo add collabora https://collaboraonline.github.io/online/
helm repo update
helm show chart collabora/collabora-online
helm show values collabora/collabora-online

De grafiekversie identificeert het pakket, niet per se de CODE-afbeeldingstag. Controleer de afbeeldingsrepository en de tag in de releasewaarden en pin vervolgens de grafiekversie die u hebt bekeken voor herhaalbare upgrades.

Maak een naamruimtegebonden geheim aan met behulp van uw goedgekeurde workflow voor geheimbeheer. De waarden in de grafiek ondersteunen een bestaand geheim en configureerbare sleutelnamen; de standaard sleutelnamen zijn usernameen password. Controleer of het geheim in de collaboranaamruimte bestaat voordat u het installeert.

2. Stel de WOPI-host, ingress- en proxyopties in.

Maak een bestand aan my_values.yaml. Vervang beide voorbeeldhostnamen door uw daadwerkelijke publieke domeinen. De aliasgroupswaarde identificeert de WOPI-client (bijvoorbeeld de Seafile- of Nextcloud-server). De Ingress-host en server_nameidentificeren de Collabora-service die de browsers van gebruikers bereiken.

replicaCount: 1

ingress:
  enabled: true
  className: nginx
  annotations:
    nginx.ingress.kubernetes.io/upstream-hash-by: "$arg_WOPISrc"
    nginx.ingress.kubernetes.io/proxy-body-size: "0"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "600"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "600"
  hosts:
    - host: office.example.com
      paths:
        - path: /
          pathType: ImplementationSpecific

autoscaling:
  enabled: false

collabora:
  aliasgroups:
    - host: "https://files.example.com:443"
  extra_params: --o:ssl.enable=false --o:ssl.termination=true
  server_name: office.example.com:443
  existingSecret:
    enabled: true
    secretName: collabora-admin
    usernameKey: username
    passwordKey: password

Dit voorbeeld volgt het door Collabora gedocumenteerde NGINX-ingresspatroon: verzoeken worden gehasht met behulp van de WOPISrcparameter, en de time-outs voor lezen en verzenden via de proxy worden verlengd voor documentsessies. Controleer of de annotatienamen overeenkomen met uw ingress-controllerversie. Als u HAProxy gebruikt, raadpleeg dan de HAProxy-annotaties en de configuratie voor load balancing uit de README van de chart.

De ssl.enable=falseopties ssl.termination=truezijn bedoeld voor een ontwerp waarbij TLS eindigt bij de ingang en het verkeer van de ingang naar de pod intern is. Dit betekent niet dat het publieke eindpunt HTTP moet gebruiken. Houd de hostnaam van de ingang op HTTPS en stel de gewone HTTP-service van de pod niet rechtstreeks bloot aan het internet. Stel deze optie in server_namewanneer Collabora zich achter een reverse proxy bevindt of de externe hostnaam niet direct kan afleiden.

Voor meerdere vaste replica's is het belangrijk om dit replicaCountbewust in te stellen en sessie-affiniteit te behouden. In de upstream README staat momenteel dat HPA is uitgeschakeld omdat schalen de samenwerking bij het bewerken en kopiëren/plakken kan verstoren. Een groter aantal replica's alleen biedt geen correcte routering; controleer of uw ingress verzoeken voor hetzelfde document naar dezelfde pod stuurt.

3. Installeer Collabora CODE

Installeer de release vanuit de officiële repository en wacht tot de implementatie gereed is:

helm install --create-namespace \
  --namespace collabora \
  collabora-online collabora/collabora-online \
  --values my_values.yaml

kubectl get pods -n collabora
kubectl get ingress -n collabora

Als u een bestaande release bijwerkt, gebruik helm upgradedan dezelfde releasenaam, namespace en waardenbestand in plaats van een tweede release te maken. Bekijk de release-opmerkingen en de weergegeven wijzigingen van de chart voordat u een productie-instantie bijwerkt.

Controleer of de pod gereed is en of de Ingress de verwachte host en het adres rapporteert. Als dit nog steeds het geval is, controleer dan de gebeurtenissen en logboeken voordat u de resource-instellingen wijzigt.

kubectl describe pods -n collabora
kubectl logs -n collabora deployment/<deployment-name>

Bepaal de CPU- en geheugencapaciteit op basis van uw workload en clustergrootte. De tabel in het README-bestand bevat voorbeelden van aanvragen en limieten, maar biedt geen garantie voor elke implementatie. Houd rekening met mogelijke beperkingen, geheugenproblemen (OOM-kills) en herstarts.

4. Controleer de ontdekking en de bewerking van het document.

Nadat DNS en TLS zijn geactiveerd, kunt u het ontdekkings-eindpunt van Collabora opvragen via de openbare hostnaam:

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

Een succesvolle reactie zou de WOPI discovery XML moeten bevatten in plaats van een ingress-foutpagina of certificaatwaarschuwing. Configureer vervolgens uw WOPI-client met dezelfde openbare Collabora-URL en controleer of Collabora de aliasgroupsHTTPS-hostnaam en -poort van die client bevat. De exacte instelling van de client is afhankelijk van het opslagproduct.

Open een testdocument vanuit de WOPI-client en breng een kleine wijziging aan. Controleer of de editor laadt, of een tweede browsersessie kan deelnemen als samenwerking vereist is, en of de wijziging wordt opgeslagen in de opslagservice. Deze end-to-end controle test DNS, inkomend TLS, sessieroutering, WOPI-hostautorisatie en bestandsoverdracht.

Veelvoorkomende aannames om te controleren

  • “Helm is geïnstalleerd, dus Collabora is klaar voor productie.” De grafiek maakt Kubernetes-resources aan, maar DNS, TLS, WOPI-hostautorisatie, inkomende routing en resourcegrootte zijn nog steeds afhankelijk van uw cluster. Controleer elk van de bovenstaande punten.
  • “De ingress-host en WOPI-host zijn dezelfde instelling.” Ze verschillen vaak: de ingress-host is het openbare IP-adres van Collabora; de WOPI-host is de opslagserver. Voer ze elk in het juiste veld van het diagram in.
  • “Meer replica’s verbeteren automatisch de samenwerking.” De upstream-grafiek documenteert sessie-affiniteit en schakelt HPA momenteel uit omdat schalen de samenwerking bij het bewerken kan verstoren. Begin met één replica of een bewust vastgesteld aantal en behoud routeringsaffiniteit.
  • "Een klein XML-fragment kan als aangepaste configuratie worden opgegeven." De waarde van de grafiek coolwsd_xml_contentvervangt het standaard configuratiebestand en vereist de volledige inhoud van het bestand. Gebruik bij voorkeur de specifieke waarden van de grafiek voor aliasgroepen en parameters, tenzij u een complete, versiecompatibele XML-configuratie hebt.

Officiële referenties

Laat een reactie achter

Voorkom dat codebewerkingssessies na 10 minuten eindigen.

Voorkom dat codebewerkingssessies na 10 minuten eindigen.

Traceer een CODE-verbinding die na 10 minuten verbroken is naar de proxy, load balancer of WebSocket-verbinding, corrigeer vervolgens de time-out en controleer of de sessie verbonden blijft.

Implementeer Collabora CODE op Kubernetes met Helm

Implementeer Collabora CODE op Kubernetes met Helm

Installeer de officiële Collabora Helm-grafiek, configureer WOPI-toegang en ingress-affiniteit en controleer of de implementatie zonder veelvoorkomende installatiefouten.

Een leeg Collabora-document traceren naar de falende laag

Een leeg Collabora-document traceren naar de falende laag

Gebruik browserverzoeken, WOPI-logboeken en gerichte proxycontroles om te achterhalen waarom Collabora een leeg document opent, en kies een oplossing die aansluit bij de bevindingen.

Schakel meertalige spellingcontrole in Collabora Online in met CODE

Schakel meertalige spellingcontrole in Collabora Online in met CODE

Configureer de CODE Docker-woordenboeken en tag documentpassages correct, zodat Engels, Frans en andere ondersteunde talen de juiste spellingcontrole krijgen.

Stel de inactiviteitstimer van Collabora in voor actieve documentweergaven.

Stel de inactiviteitstimer van Collabora in voor actieve documentweergaven.

Pas de drempelwaarde voor inactiviteit per weergave aan in coolwsd en onderscheid deze van het dimmen van tabbladen op de achtergrond, het sluiten van documenten, automatisch opslaan en het verlopen van inloggegevens.

Schakel de Collabora CODE-updatecontroles en ongewenste verbindingen uit.

Schakel de Collabora CODE-updatecontroles en ongewenste verbindingen uit.

Stop de geplande CODE-updatecontroles, bekijk optionele externe services en gebruik uitgaande netwerkbeheerfuncties zonder de documentbewerking te onderbreken.

Verbind Seafile en Collabora met de juiste WOPI-URL.

Verbind Seafile en Collabora met de juiste WOPI-URL.

Schakel veilige documentbewerking in Seafile in door de discovery-URL, HTTPS en WOPI-toegang van Collabora voor uw implementatie te configureren.

Herstel de kopieer- en plakfunctie tussen Collabora en desktop-apps.

Herstel de kopieer- en plakfunctie tussen Collabora en desktop-apps.

Test het klembord van het systeem, pas de browserrechten aan en bepaal wanneer een ingebedde Collabora-integratie een wijziging van het iframe-beleid nodig heeft.

Maak aangepaste lettertypen beschikbaar in Collabora CODE Docker

Maak aangepaste lettertypen beschikbaar in Collabora CODE Docker

Koppel lettertypebestanden aan Docker en de systeemconfiguratie van Collabora, zodat aangepaste lettertypen in de editor verschijnen en correct worden weergegeven in documenten.

Herstel de Collabora CODE-instellingen zonder de implementatiewijzigingen te verliezen.

Herstel de Collabora CODE-instellingen zonder de implementatiewijzigingen te verliezen.

Maak een back-up van coolwsd.xml en de bijbehorende implementatiebronnen, herstel deze op een veilige manier en controleer de code voordat gebruikers verder kunnen bewerken.