Seafile può aprire i file di Office supportati in Collabora Online tramite WOPI, un protocollo che consente al server di archiviazione e all'editor online di scambiare informazioni sui documenti e contenuti dei file. La configurazione corretta dipende da dove viene eseguito Seafile, da come vengono gestiti HTTPS e i proxy inversi e se si desidera che Collabora si trovi sulla stessa rete Docker o su un server separato.
Questa guida segue le istruzioni di integrazione con Collabora presenti nel Manuale di amministrazione di Seafile (documentazione di Seafile 14.0, verificata il 6 ottobre 2026). I file Docker Compose e i tag delle immagini esatti possono variare, quindi si consiglia di utilizzare i file relativi alla versione di Seafile installata anziché copiare l'intera configurazione Compose da un tutorial precedente.
Quale implementazione dovresti scegliere?
| Opzione | Migliore vestibilità | Compromesso principale |
| Contenitore collaborativo insieme a Seafile | Un'installazione Docker a nodo singolo che utilizza i file Compose forniti da Seafile. | Percorso più rapido e rete interna con nome di servizio, ma entrambi i servizi condividono la CPU, la memoria e la finestra di manutenzione di un host. |
| Collabora su un host separato | Servizio Collabora esistente, pianificazione della capacità separata o implementazione multi-host | Scalabilità e aggiornamenti indipendenti, ma richiede un endpoint HTTPS pubblico, un proxy inverso e un accesso di rete affidabile tra Collabora e Seafile. |
Per una nuova distribuzione Docker a nodo singolo, iniziare con l'immagine Docker fornita da Seafile collabora.yml. Per un server Collabora standalone esistente o un cluster, utilizzare le istruzioni di installazione di Collabora e impostare l'URL di rilevamento di Seafile sull'indirizzo esterno di Collabora. La guida all'integrazione di Seafile richiede HTTPS per Seafile e specifica che un nodo Collabora separato dovrebbe utilizzare HTTPS sulla porta standard 443, con reverse proxy verso il servizio di Collabora sulla porta 9980. Consultare la guida all'integrazione online di Seafile con Collabora e la documentazione di installazione di Collabora .
Prima di iniziare
- Verifica che il tuo server Seafile sia raggiungibile tramite HTTPS con un certificato valido. La guida di Seafile richiede esplicitamente HTTPS per questa integrazione.
- Identifica il tipo di distribuzione: Docker a nodo singolo, installazione binaria o configurazione multi-host/cluster. I nomi dei file di composizione e il routing del proxy dipendono da questa scelta.
- Scegli un nome host per Collabora, ad esempio
office.example.com, se Collabora sarà raggiungibile indipendentemente dai browser degli utenti. Assicurati che il suo certificato DNS e TLS funzionino prima di configurare Seafile.
- Assicurati di avere accesso amministrativo a Seafile
seahub_settings.pye al file Docker .env, se applicabile. Archivia la password di amministratore di Collabora in un file protetto e non pubblicarla in screenshot, log o repository pubblici.
La documentazione di Seafile descrive i passaggi per l'installazione di Docker sullo stesso host per il layout Compose supportato. Se il tuo reverse proxy, il progetto Compose o la rete sono diversi, considera i valori di esempio riportati di seguito come punto di partenza e verifica i nomi dei servizi e i percorsi nella tua implementazione.
Opzione A: Aggiungere Collabora a un'implementazione Docker di Seafile
1. Aggiungi il file ufficiale di Collabora Compose
Dalla directory in cui si trova la configurazione di Seafile Compose, scarica il file Collabora per la versione di Seafile in uso. Per il percorso di Seafile 14.0 indicato nel manuale corrente:
wget https://manual.seafile.com/14.0/repo/docker/collabora.yml
Apri .enve aggiungi collabora.ymlal COMPOSE_FILEfile esistente. Mantieni tutte le voci correnti; ad esempio, un'installazione che elenca già i file del server Seafile, di Caddy e di SeaDoc aggiungerà il file di Collabora anziché sostituire l'elenco:
COMPOSE_FILE='seafile-server.yml,caddy.yml,seadoc.yml,collabora.yml'
Il tuo elenco effettivo potrebbe essere diverso. Non rimuovere il reverse proxy corrente o altri servizi solo per adattarli a questo esempio. Il file Compose definisce le impostazioni del container e della rete previste dalla distribuzione predefinita di Seafile.
2. Imposta i valori dell'ambiente di Collabora
Aggiungi le variabili documentate da Seafile allo stesso .envfile. L'esempio attuale utilizza il collabora/codenome dell'immagine rolling; i team che necessitano di aggiornamenti riproducibili dovrebbero selezionare un tag di rilascio di Collabora supportato dal proprio ambiente e bloccarlo intenzionalmente. Esamina le note di rilascio e testa gli aggiornamenti prima di modificare un servizio di editor funzionante.
COLLABORA_IMAGE=collabora/code
COLLABORA_PORT=6232
COLLABORA_USERNAME=admin
COLLABORA_PASSWORD=replace-with-a-long-random-secret
COLLABORA_ENABLE_ADMIN_CONSOLE=true
COLLABORA_REMOTE_FONT=
COLLABORA_ENABLE_FILE_LOGGING=false
Il valore della porta è la porta rivolta verso l'host utilizzata dall'esempio Compose di Seafile; Collabora è in ascolto sulla porta 9980 all'interno del container. Mantieni privata la console di amministrazione o limita l'accesso tramite proxy/firewall. Il nome utente e la password sopra indicati sono solo esempi: scegli credenziali univoche e proteggi il file. Se la tua organizzazione non necessita della console di amministrazione, segui le impostazioni supportate dal modello Compose per disabilitarla.
3. Configurare la connessione WOPI di Seafile
Modifica seahub_settings.pye aggiungi le impostazioni di integrazione di Collabora. Per i container sulla stessa rete Compose, l'esempio attuale di Seafile utilizza il nome del servizio interno collabora:
OFFICE_SERVER_TYPE = 'CollaboraOffice'
ENABLE_OFFICE_WEB_APP = True
OFFICE_WEB_APP_BASE_URL = 'http://collabora:9980/hosting/discovery'
WOPI_ACCESS_TOKEN_EXPIRATION = 30 * 60
OFFICE_PREVIEW_MAX_SIZE = 30 * 1024 * 1024
ENABLE_OFFICE_WEB_APP_EDIT = True
OFFICE_WEB_APP_FILE_EXTENSION = (
'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)
OFFICE_WEB_APP_EDIT_FILE_EXTENSION = (
'odp', 'ods', 'odt', 'xls', 'xlsb', 'xlsm', 'xlsx',
'ppsx', 'ppt', 'pptm', 'pptx', 'doc', 'docm', 'docx'
)
L'URL di rilevamento interno serve per la comunicazione tra Seafile e Collabora sulla rete Docker condivisa. I browser degli utenti devono inoltre essere in grado di raggiungere l'indirizzo Collabora fornito dall'integrazione. Segui le istruzioni ufficiali per il file Compose e la configurazione del proxy in modo che il percorso accessibile dal browser sia pubblicato in modo sicuro; un nome host accessibile solo dal container e risolvibile solo all'interno di Docker non è un URL pubblico utilizzabile nel browser.
Limita gli elenchi delle estensioni dei file ai formati necessari ai tuoi utenti e supportati dalla tua versione di Collabora. L'impostazione della dimensione di anteprima mostrata sopra corrisponde al valore di 30 MiB nell'esempio attuale di Seafile; per documenti di dimensioni maggiori potrebbe essere necessario modificare il limite, tenendo conto del relativo impatto su memoria e prestazioni.
4. Avviare o aggiornare i servizi
Convalida la configurazione di Compose, quindi avvia lo stack dalla sua directory di progetto:
docker compose config
docker compose up -d
La guida di Seafile consiglia di riavviare Seafile dopo aver apportato una modifica seahub_settings.py. Con le implementazioni Docker, docker compose up -dviene applicata la configurazione Compose aggiornata; se la modifica dell'impostazione non ha effetto, riavviare il servizio Seafile utilizzando il metodo previsto per la propria versione. Evitare un riavvio generico docker compose downa meno che non si intenda arrestare l'intero stack.
Opzione B: Puntare Seafile a Collabora su un altro host
Installa e configura Collabora seguendo le istruzioni ufficiali di installazione e di configurazione del reverse proxy. Utilizza HTTPS sull'endpoint pubblico standard e instrada le richieste tramite proxy alla porta interna 9980 di Collabora. Verifica che l'host Seafile possa raggiungere Collabora e che Collabora possa raggiungere l'indirizzo HTTPS di Seafile; entrambe le direzioni sono fondamentali per il caricamento dei documenti WOPI.
Mantieni le altre impostazioni di Seafile della sezione precedente, ma modifica l'impostazione di rilevamento con il nome host reale di Collabora:
OFFICE_WEB_APP_BASE_URL = 'https://office.example.com/hosting/discovery'
Utilizza il tuo hostname e certificato effettivi. Non includere il nome del servizio Docker interno a meno che Seafile e Collabora non condividano effettivamente una rete in cui tale nome sia risolvibile. Un host separato ti offre un controllo indipendente sulle risorse e sulla manutenzione, ma comporta la gestione di DNS, firewall, certificati e reverse proxy. Per un cluster Seafile, segui la configurazione del proxy e del rilevamento dei servizi del cluster anziché presumere che si applichi la rete Compose a nodo singolo.
Come verificare che la connessione funzioni
- Aprire
https://office.example.com/hosting/discoveryda un browser se si utilizza un host separato. Per una configurazione sullo stesso host, testare la rotta pubblica di Collabora pubblicata dal proxy. Una risposta positiva conferma che l'endpoint di rilevamento è raggiungibile, sebbene non di per sé dimostri che la modifica WOPI funzioni.
- Accedi a Seafile e apri un file di piccole dimensioni e non sensibile,
.docxincluso negli elenchi di estensioni configurati..xlsx.odt
- Verifica che il file si apra in Collabora, apporta una modifica innocua, attendi il completamento del salvataggio e chiudi l'editor.
- Riapri il file in Seafile e verifica che la modifica sia stata salvata. Per una verifica più accurata, scarica una copia e conferma il contenuto previsto.
Eseguite il test con un file che potete modificare in sicurezza. Un editor visibile senza un salvataggio corretto rappresenta solo un successo parziale: WOPI deve essere in grado di recuperare il file e restituire la versione modificata a Seafile.
Guasti comuni e quale lato controllare
| Sintomo | Primi controlli |
| Seafile segnala che l'ufficio online non è disponibile. | Verifica OFFICE_SERVER_TYPEl' ENABLE_OFFICE_WEB_APPURL di rilevamento e se Seahub è stato riavviato dopo la modifica delle impostazioni. |
| La scoperta funziona dal server, ma il browser mostra un editor vuoto | Verifica che il browser possa raggiungere l'hostname pubblico di Collabora tramite HTTPS e che i percorsi proxy e i certificati TLS siano corretti. Un hostname Docker interno non è automaticamente accessibile dal browser dell'utente. |
| L'editor si carica, ma non è possibile recuperare o salvare il file. | Controlla i log di Collabora e Seafile, il loro accesso reciproco alla rete, la fiducia nel certificato HTTPS e le richieste WOPI. Seafile documenta il flusso della richiesta: Seahub crea l'iframe, il browser carica Collabora e Collabora richiede il contenuto del file a Seahub. |
| Sono aperti solo alcuni file di Office | Verifica le tuple di estensione di anteprima e modifica, il limite di dimensione dell'anteprima di Seafile e i formati supportati dalla build di Collabora installata. |
Per i log di Docker, consultare i documenti di Seafile docker logs seafile-collabora. Verificare i log di Seafile/Seahub insieme all'output di Collabora e correlare le richieste al proxy. Non abilitare la registrazione dettagliata o la registrazione dei file indefinitamente se espone URL di documenti o altri dettagli operativi sensibili. La guida ufficiale alla risoluzione dei problemi di Collabora fornisce ulteriori controlli per gli errori lato Collabora.
Quale scelta ha senso?
Scegli il container incluso se la tua installazione di Seafile è su un singolo host Docker, desideri il supporto per la configurazione di Compose e la condivisione di CPU e memoria con Seafile è accettabile. Scegli un host Collabora separato se ne gestisci già uno, hai bisogno di capacità o pianificazioni di aggiornamento indipendenti, oppure stai integrando un'architettura multi-host e puoi mantenere HTTPS e il routing di rete in modo affidabile. In entrambi i casi, segui la documentazione corrispondente alla tua versione di Seafile, mantieni sicuri gli endpoint accessibili tramite browser e verifica sia l'apertura che il salvataggio dei documenti prima di invitare gli utenti a utilizzare la modifica online.