Come configurare Nextcloud Office con CODE Docker in 10 minuti

Nota per il 2026: la documentazione di Nextcloud 35 ora separa Nextcloud Office , basato su Euro-Office, da Collabora Online , che rimane un'alternativa supportata e può ancora essere ospitato in locale con l'immagine Docker ufficiale di CODE. Questa guida utilizza il percorso esterno Collabora/CODE. La denominazione è importante perché le guide precedenti spesso descrivono CODE come se fosse l'unico server dietro "Nextcloud Office". Consultare la panoramica di Nextcloud Office più recente prima di applicare le istruzioni scritte per le versioni precedenti.

Se il tuo sito Nextcloud funziona già tramite HTTPS, Docker è installato e disponi di un nome DNS, ad esempio, office.example.compronto per Collabora, l'integrazione può essere completata in circa 10 minuti. La propagazione DNS, l'emissione di certificati, le modifiche al firewall o la risoluzione dei problemi di un proxy inverso possono richiedere più tempo e non sono incluse in questa stima.

Cosa ti serve prima di iniziare

Il percorso rapido presuppone un'istanza Nextcloud esistente, un host Linux in grado di eseguire Docker e un hostname HTTPS dedicato per CODE. L'esempio Docker attualmente fornito da Nextcloud raccomanda un sottodominio separato e un certificato TLS valido. CODE è in ascolto sulla porta 9980 internamente, mentre un reverse proxy lo espone in modo sicuro ai browser e a Nextcloud.

  • Un server Nextcloud funzionante raggiungibile tramite un URL come https://cloud.example.com.
  • Docker Engine sull'host che eseguirà CODE.
  • Un record DNS che office.example.compunta al tuo proxy inverso.
  • Un certificato HTTPS valido per il nome host dell'ufficio.
  • Accesso amministrativo a Nextcloud e accesso root o sudo all'host Docker.

La documentazione di installazione attuale di Nextcloud afferma che il server CODE integrato è la soluzione più semplice per uso personale o per piccoli team, ma raccomanda un'installazione dedicata di Collabora Online per prestazioni migliori. L' immagine ufficiale di collabora/code su Docker Hub è quella utilizzata di seguito.

Finestra del terminale che mostra l'output della versione di Docker e l'immagine ufficiale collabora/code in fase di download.
Verifica prima Docker, poi scarica l'immagine ufficiale di Collabora CODE. La versione di Docker mostrata è solo a scopo illustrativo; utilizza una versione di Docker attualmente supportata sul tuo host.

Passaggio 1: Scarica l'immagine Docker del CODICE

Sull'host Docker, verifica che Docker sia disponibile e scarica l'immagine ufficiale:

docker --version
docker pull collabora/code:latest

Il latesttag è utile per una breve guida di configurazione perché Collabora pubblica aggiornamenti frequentemente. Per un ambiente di produzione, è consigliabile bloccare una versione specifica che è stata testata, quindi pianificare aggiornamenti mirati anziché consentire un cambio di immagine imprevisto durante una ricostruzione.

Passaggio 2: Avvia il CODICE per il tuo host Nextcloud

L'esempio Docker di Nextcloud attualmente utilizzato aliasgroup1indica a CODE quale host Nextcloud è autorizzato a integrarsi con esso. Sostituisci il nome host dell'esempio con il tuo URL Nextcloud reale:

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

Il binding 127.0.0.1impedisce che la porta 9980 sia esposta direttamente a Internet quando il reverse proxy è in esecuzione sullo stesso server. Se il proxy è in esecuzione su un'altra macchina, configura le regole di rete in modo che solo il proxy possa raggiungere CODE; non pubblicare semplicemente la porta 9980 a tutti.

Finestra del terminale che mostra un container CODE avviato su localhost sulla porta 9980 e elencato dal comando docker ps.
Eseguire CODE su 127.0.0.1:9980 quando un proxy inverso sullo stesso host fornirà l'endpoint HTTPS pubblico.

Verifica che il container sia in esecuzione:

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

Passaggio 3: Inserire HTTPS e un proxy inverso davanti al CODICE

Nextcloud documenta i percorsi Collabora richiesti come /browser, /hosting/discovery, /hosting/capabilities, /cool/adminws, /cool, più il traffico WebSocket sotto /cool/.../ws. Ecco perché una configurazione generica "proxy tutto tranne WebSockets" spesso produce un editor che si apre parzialmente e poi si disconnette.

Editor di configurazione che mostra i percorsi del proxy inverso per browser, rilevamento hosting, funzionalità, cool e percorsi WebSocket.
Il tuo reverse proxy deve inoltrare gli endpoint Collabora browser, discovery, capabilities, /cool e WebSocket. Assicurati che il protocollo upstream corrisponda alla modalità SSL del tuo container CODE.

Per Nginx, il seguente esempio compatto mantiene l'HTTPS interno predefinito di CODE e termina il TLS pubblico su Nginx. Utilizza i tuoi percorsi di certificato:

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; }
}

Questo è intenzionalmente un esempio di routing minimale, non una configurazione di sicurezza completa per Nginx. Se si esegue CODE con TLS interno disabilitato, l'upstream diventa http://127.0.0.1:9980e il container deve essere configurato in modo coerente. Non combinare un target proxy HTTP con un container CODE che si aspetta ancora HTTPS.

Passaggio 4: Verificare l'endpoint pubblico CODE

Prima di modificare le impostazioni di Nextcloud, apri questo URL in un browser:

https://office.example.com/hosting/discovery
Il browser visualizza una risposta XML di rilevamento WOPI dal servizio di rilevamento hosting office.example.com.
Una risposta valida da /hosting/discovery è un modo rapido per confermare che l'endpoint pubblico CODE e il reverse proxy siano attivi.

Dovresti ricevere un file XML di rilevamento WOPI anziché un errore proxy, un avviso relativo al certificato o un messaggio di errore di connessione vuoto. Puoi anche eseguire il test dalla riga di comando:

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

Se questo non funziona, correggi prima DNS, TLS, il proxy o il container. Collegare Nextcloud a un endpoint non funzionante aggiunge solo un ulteriore livello di complessità alla risoluzione dei problemi.

Passaggio 5: Abilita l'integrazione di Nextcloud con Office

Accedi a Nextcloud come amministratore, apri App , vai su Office e testo e abilita l'app di integrazione con Office disponibile per la tua installazione. L'esempio Docker di Nextcloud Collabora attualmente indica ancora agli amministratori di installare l'app "Nextcloud Office" e quindi configurare il server esterno nelle impostazioni di amministrazione di Office, anche se la panoramica di Nextcloud 35 ora distingue i prodotti Euro-Office e Collabora.

Pagina delle app di Nextcloud nella categoria Office e testo con Nextcloud Office abilitato.
Abilita l'app di integrazione con l'ufficio in Nextcloud prima di inserire l'indirizzo del server CODE esterno.

Se la tua versione di Nextcloud utilizza etichette leggermente diverse, fai riferimento ai nomi dei prodotti visualizzati nella tua interfaccia di amministrazione anziché presumere che uno screenshot precedente corrisponda esattamente.

Passaggio 6: Configurare Nextcloud per il server CODE esterno

Apri le impostazioni di amministrazione → Office . Seleziona l'opzione Server Collabora/Office esterno e inserisci:

https://office.example.com
Schermata di amministrazione di Nextcloud Office con un campo per l'URL di un server Collabora Online esterno e un indicatore di raggiungibilità.
La pagina di amministrazione di Office è il luogo in cui viene inserito l'URL esterno di Collabora, una volta che il proxy è raggiungibile.

Salva le impostazioni e attendi il controllo della connessione da parte di Nextcloud. Nextcloud consiglia di utilizzare lo stesso protocollo su entrambi i lati, con HTTPS come preferenza. Un controllo positivo significa che Nextcloud è in grado di raggiungere l'endpoint di Collabora, ma non garantisce che ogni percorso WebSocket del browser e ogni richiesta WOPI funzioneranno durante una sessione di modifica reale.

Passaggio 7: Limitare le richieste WOPI

Una volta stabilita la connessione di base, perfeziona la configurazione WOPI. La guida di configurazione di Nextcloud raccomanda vivamente di limitare le richieste WOPI agli indirizzi IP dei server Collabora che devono richiedere i file. Nelle impostazioni di amministrazione → Office , utilizza il campo "Consenti richieste WOPI" dove disponibile.

Pagina di amministrazione di Nextcloud Office che mostra l'URL del server Collabora, lo stato di connessione (avvenuta) e il campo della lista di autorizzazione WOPI.
Una volta stabilita la connessione, verificare l'elenco degli indirizzi consentiti da WOPI in modo che solo gli indirizzi dei server Collabora previsti possano richiedere i file.

Si tratta di un controllo di sicurezza importante perché il flusso WOPI è il modo in cui Collabora recupera e scrive documenti per conto degli utenti di Nextcloud. Utilizza indirizzi IP o reti che rappresentino effettivamente il percorso del tuo server CODE, come richiesto dalla tua implementazione; non incollare un nome host in un campo di elenco IP consentiti solo perché è simile al campo URL del server. Consulta la guida di Nextcloud sulla configurazione di Collabora e sul flusso WOPI per conoscere le opzioni attualmente disponibili.

Passaggio 8: Apri un documento reale e conferma il salvataggio

Crea un piccolo file ODT o DOCX in Nextcloud, aprilo, scrivi una frase, chiudi l'editor e riapri il file. In questo modo si verifica l'intera catena: browser → nome host pubblico CODE → proxy inverso → CODE → richiesta WOPI a Nextcloud → salvataggio nello storage.

L'editor di documenti Collabora basato su browser è aperto all'interno di Nextcloud con un documento di esempio relativo a un piano di progetto.
Il test finale è pratico: crea o apri un documento e verifica che l'editor si carichi, accetti le modifiche e le salvi su Nextcloud.

La configurazione non è completa solo perché la pagina delle impostazioni di Office indica che il server è raggiungibile. Un buon risultato si ottiene quando l'editor si carica senza avvisi di connessione, il documento può essere modificato e le modifiche salvate rimangono visibili dopo la riapertura. Se la shell dell'editor si carica ma la modifica si interrompe, concentrarsi innanzitutto sul /cool/.../wspercorso WebSocket. Se l'editor non riesce a caricare il file, controllare i log di CODE, i log di Nextcloud, la risoluzione DNS tra i due server e le regole della lista di autorizzazione WOPI.

Lista di controllo rapida per la risoluzione dei problemi

SintomoPrima verifica
Nextcloud segnala che il server dell'ufficio non è raggiungibile.Apri /hosting/discoverytramite HTTPS dall'host Nextcloud.
Il browser restituisce un errore 502 o 504Verificare che il container sia in esecuzione e che il proxy sia raggiungibile 127.0.0.1:9980.
L'editor si apre, poi si disconnette.Verificare le intestazioni di aggiornamento WebSocket e il /cool/(...)/wspercorso.
Errore del certificatoCorreggi la catena di certificati pubblici e assicurati che l'URL configurato utilizzi il nome host corretto.
Accesso a WOPI negatoEsamina l'elenco WOPI consentito di Nextcloud e la configurazione host Nextcloud consentita da CODE.
Funziona su una rete ma non su un'altra.Verifica la presenza di DNS separati, le regole del firewall e accertati che Nextcloud e CODE siano in grado di risolvere reciprocamente i propri nomi pubblici.

Mantieni CODE aggiornato senza che gli aggiornamenti diventino delle sorprese

Collabora pubblica frequentemente aggiornamenti del CODE. La pagina ufficiale di Docker Hub mostra i tag attivamente mantenuti e le linee guida di Nextcloud per l'aggiornamento indicano che le implementazioni Docker vengono aggiornate scaricando un'immagine più recente e ricreando il container. Per un server domestico, monitorare gli aggiornamenti latestpuò essere ragionevole. Per l'uso aziendale, è consigliabile utilizzare un tag testato, leggere le note di rilascio, eseguire il backup della configurazione e quindi aggiornare durante una finestra di manutenzione.

È importante tenere presente anche la portata di CODE. Docker Hub descrive CODE come l'edizione di sviluppo destinata agli utenti domestici, mentre la documentazione di Nextcloud indirizza le implementazioni più ampie o che richiedono particolare affidabilità verso le opzioni enterprise supportate. Una configurazione Docker di 10 minuti è ottima per un cloud personale, un laboratorio o un piccolo team, ma non sostituisce la pianificazione della capacità, il monitoraggio, i backup o il supporto enterprise.

Risultato finale

Una volta che il container è in esecuzione, il proxy HTTPS è corretto, /hosting/discoveryrisponde, l'integrazione con Nextcloud punta a https://office.example.com, WOPI è limitato e un documento reale si apre e viene salvato, l'integrazione è completa. Il dettaglio più importante non è il numero di comandi, ma il mantenimento della coerenza del percorso di rete. Nextcloud, CODE, il reverse proxy e i browser degli utenti devono essere tutti in grado di raggiungere i nomi host HTTPS previsti con i percorsi WebSocket e WOPI corretti.

Lascia un commento

Confronto tra strumenti di monitoraggio open-source e closed-source.

Confronto tra strumenti di monitoraggio open-source e closed-source.

Confronta strumenti di monitoraggio open source e proprietari in base a costi, supporto, personalizzazione, sicurezza e opzioni disponibili, tra cui Zabbix, Nagios, PRTG e altri.

I migliori server TFTP per Windows, Linux e macOS

I migliori server TFTP per Windows, Linux e macOS

Confronta i migliori server TFTP per Windows, Linux e macOS, tra cui SolarWinds, Tftpd64, tftpd-hpa, atftpd, haneWIN e dnsmasq.

5 migliori alternative a Microsoft Access per database desktop e web

5 migliori alternative a Microsoft Access per database desktop e web

Confronta cinque alternative a Microsoft Access per la gestione di database su desktop, SQLite, senza codice e tramite browser, evidenziandone punti di forza, limiti e casi d'uso più adatti.

Ingresso vs. Uscita: qual è la differenza nelle reti?

Ingresso vs. Uscita: qual è la differenza nelle reti?

Comprendere come i termini "ingress" e "egress" descrivono il traffico in entrata e in uscita, perché la direzione dipende dal confine della rete e come monitorare la larghezza di banda e individuare i trasferimenti di dati rischiosi.

6 migliori server Syslog gratuiti da provare per la registrazione centralizzata dei log

6 migliori server Syslog gratuiti da provare per la registrazione centralizzata dei log

Confronta sei server e collettori syslog gratuiti per Windows e Linux, inclusi strumenti con interfaccia grafica, opzioni open source, funzionalità di ricerca, avvisi e trasporto sicuro.

Cos'è IIS? Il server Web Windows di Microsoft e le sue alternative.

Cos'è IIS? Il server Web Windows di Microsoft e le sue alternative.

Scopri cosa fa Microsoft IIS, come funzionano la sua pipeline di richieste e i pool di applicazioni e quando Apache, NGINX o Caddy potrebbero essere più adatti alle tue esigenze di server web.

Risolvere l'elevato utilizzo della CPU in Jitsi Meet sui browser client.

Risolvere l'elevato utilizzo della CPU in Jitsi Meet sui browser client.

Diagnostica i picchi di utilizzo della CPU del browser Jitsi Meet e riduci il carico del client controllando i riquadri video, gli effetti della fotocamera, la grafica del browser e le impostazioni dell'host.

Come monitorare le metriche di Jitsi Videobridge con Prometheus e Grafana

Come monitorare le metriche di Jitsi Videobridge con Prometheus e Grafana

Monitora lo stato di salute, il carico della conferenza e il traffico di Jitsi Videobridge con il suo endpoint Prometheus integrato, quindi esplora e visualizza i dati in Grafana.

Come configurare un nome di dominio personalizzato per Jitsi Meet Docker

Come configurare un nome di dominio personalizzato per Jitsi Meet Docker

Configura un dominio personalizzato per Jitsi Meet Docker con DNS, URL pubblico, HTTPS, Let's Encrypt, porte del firewall, impostazioni NAT e verifica end-to-end.

Fix Zimbra Admin Console 404 Not Found After SSL Renewal

Fix Zimbra Admin Console 404 Not Found After SSL Renewal

Fix Zimbra Admin Console 404 errors after SSL renewal by checking the correct URL and port, proxy routing, service status, deployed certificates, and logs.