O Seafile consegue abrir arquivos do Office compatíveis no Collabora Online por meio do WOPI, um protocolo que permite que o servidor de armazenamento e o editor online troquem informações sobre documentos e conteúdo de arquivos. A implantação ideal depende de onde você executa o Seafile, de como você gerencia o HTTPS e os proxies reversos e se você deseja que o Collabora esteja na mesma rede Docker ou em um servidor separado.
Este guia segue as instruções de integração do Collabora presentes no Manual de Administração do Seafile (documentação do Seafile 14.0, consultada em 6 de outubro de 2026). Os arquivos Docker Compose e as tags de imagem exatos podem mudar, portanto, use os arquivos da sua versão do Seafile instalada, em vez de copiar a configuração completa do Compose de um tutorial antigo.
Qual implantação você deve escolher?
| Opção | Melhor ajuste | Principal compensação |
| O contêiner Collabora está em conjunto com o Seafile. | Uma instalação Docker de nó único usando os arquivos Compose fornecidos pelo Seafile. | O caminho mais rápido e a rede interna com nome de serviço são utilizados, mas ambos os serviços compartilham a CPU, a memória e a janela de manutenção de um mesmo host. |
| Colabore em um host separado | Serviço Collabora existente, planejamento de capacidade separado ou implantação em vários hosts | Escalabilidade e atualizações independentes, mas requer um endpoint HTTPS público, um proxy reverso e acesso de rede confiável entre o Collabora e o Seafile. |
Para uma nova implantação Docker de nó único, comece com o Docker fornecido pelo Seafile collabora.yml. Para um servidor Collabora independente existente ou um cluster, use as orientações de instalação do próprio Collabora e defina a URL de descoberta do Seafile para o endereço externo do Collabora. O guia de integração do Seafile exige HTTPS para o Seafile e observa que um nó Collabora separado deve usar HTTPS na porta padrão 443, com proxy reverso para o serviço do Collabora na porta 9980. Consulte o guia de integração do Seafile com o Collabora Online e a documentação de instalação do Collabora .
Antes de começar
- Confirme se o seu servidor Seafile está acessível via HTTPS com um certificado válido. O guia do Seafile exige explicitamente HTTPS para esta integração.
- Identifique o tipo de implantação: instalação Docker de nó único, instalação binária ou configuração de vários hosts/cluster. Os nomes dos arquivos de composição e o roteamento do proxy dependem dessa escolha.
- Escolha um nome de host para o Collabora, como
office.example.com`<nome_do_host>`, caso o Collabora seja acessado independentemente pelos navegadores dos usuários. Certifique-se de que o DNS e o certificado TLS do Collabora estejam funcionando antes de configurar o Seafile.
- Tenha acesso de administrador ao Seafile
seahub_settings.pye ao Dockerfile .env, se aplicável. Armazene a senha de administrador do Collabora em um arquivo de ambiente protegido e não a publique em capturas de tela, logs ou em um repositório público.
A documentação do Seafile descreve os passos para instalação do Docker no mesmo host para o layout Compose suportado. Se o seu proxy reverso, projeto Compose ou rede forem diferentes, considere os valores de exemplo abaixo como ponto de partida e verifique os nomes de serviço e rotas na sua própria implementação.
Opção A: Adicionar o Collabora a uma implantação do Seafile em Docker
1. Adicione o arquivo oficial do Collabora Compose.
A partir do diretório onde se encontra a sua configuração do Seafile Compose, faça o download do arquivo Collabora correspondente à versão do Seafile que você utiliza. Para consultar o caminho do Seafile 14.0 no manual atual:
wget https://manual.seafile.com/14.0/repo/docker/collabora.yml
Abra .enve adicione collabora.ymlà COMPOSE_FILElista existente. Preserve todas as entradas atuais; por exemplo, uma instalação que já lista o servidor Seafile, o Caddy e os arquivos SeaDoc anexaria o arquivo Collabora em vez de substituir a lista:
COMPOSE_FILE='seafile-server.yml,caddy.yml,seadoc.yml,collabora.yml'
Sua lista real pode ser diferente. Não remova o proxy reverso atual ou outros serviços apenas para corresponder a este exemplo. O arquivo Compose define as configurações de contêiner e rede esperadas pela implantação integrada do Seafile.
2. Defina os valores de ambiente do Collabora.
Adicione as variáveis documentadas pelo Seafile ao mesmo .envarquivo. O exemplo atual usa o collabora/codenome da imagem contínua; equipes que precisam de atualizações reproduzíveis devem selecionar uma tag de versão do Collabora compatível com seu ambiente e fixá-la deliberadamente. Revise as notas de versão e teste as atualizações antes de alterar um serviço de edição em funcionamento.
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
O valor da porta é a porta voltada para o host usada pelo exemplo Compose do Seafile; o Collabora escuta na porta 9980 dentro do contêiner. Mantenha o console de administração privado ou restrinja o acesso no proxy/firewall. O nome de usuário e a senha acima são exemplos — escolha credenciais exclusivas e proteja o arquivo. Se sua organização não precisar do console de administração, siga as configurações suportadas pelo modelo Compose para desativá-lo.
3. Configure a conexão WOPI do Seafile.
Edite seahub_settings.pye adicione as configurações de integração do Collabora. Para contêineres na mesma rede Compose, o exemplo atual do Seafile usa o nome de serviço 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'
)
A URL de descoberta interna serve para a comunicação entre o Seafile e o Collabora na rede Docker compartilhada. Os navegadores dos usuários também devem conseguir acessar o endereço do Collabora que a integração fornece. Siga as instruções oficiais de configuração do arquivo Compose e do proxy para que a rota visível no navegador seja publicada de forma segura; um nome de host exclusivo do contêiner que só resolve dentro do Docker não é uma URL pública utilizável pelo navegador.
Mantenha as listas de extensões de arquivo limitadas aos formatos que seus usuários precisam e que sua versão do Collabora suporta. A configuração de tamanho de pré-visualização mostrada acima é o valor de 30 MiB no exemplo atual do Seafile; documentos maiores podem exigir uma alteração deliberada do limite, considerando o impacto correspondente na memória e no desempenho.
4. Inicie ou atualize os serviços
Valide a configuração do Compose e, em seguida, inicie o stack a partir do diretório do projeto:
docker compose config
docker compose up -d
O guia do Seafile recomenda reiniciar o serviço após qualquer alteração seahub_settings.py. Em implantações Docker, docker compose up -da configuração atualizada do Compose é aplicada; caso a alteração não surta efeito, reinicie o serviço Seafile utilizando o método apropriado para sua versão. Evite docker compose downinterromper todo o serviço, a menos que pretenda fazê-lo.
Opção B: Direcione o Seafile para o Collabora em outro host.
Instale e disponibilize o Collabora seguindo as instruções oficiais de implantação e proxy reverso. Utilize HTTPS no endpoint público padrão e redirecione as requisições para a porta interna 9980 do Collabora. Confirme se o host do Seafile consegue acessar o Collabora e se o Collabora consegue acessar o endereço HTTPS do Seafile; ambas as direções são importantes para o carregamento de documentos WOPI.
Mantenha as demais configurações do Seafile da seção anterior, mas altere a configuração de descoberta para o nome de host real do Collabora:
OFFICE_WEB_APP_BASE_URL = 'https://office.example.com/hosting/discovery'
Use o nome do host e o certificado reais. Não inclua o nome do serviço Docker interno, a menos que o Seafile e o Collabora compartilhem de fato uma rede onde esse nome seja resolvido. Um host separado oferece controle independente de recursos e manutenção, mas adiciona trabalho de DNS, firewall, certificado e proxy reverso. Para um cluster Seafile, siga o design de proxy e descoberta de serviços do cluster, em vez de assumir que a rede Compose de nó único se aplica.
Como confirmar se a conexão está funcionando
- Abra
https://office.example.com/hosting/discoverya partir de um navegador se estiver usando um host diferente. Para uma configuração no mesmo host, teste a rota pública do Collabora publicada pelo seu proxy. Uma resposta bem-sucedida confirma que o endpoint de descoberta está acessível, embora isso por si só não prove que a edição WOPI funciona.
- Faça login no Seafile e abra um arquivo pequeno e não confidencial
.docx, como um arquivo .txt .xlsxou .htaccess, .odtque esteja incluído nas suas listas de extensões configuradas.
- Confirme se o arquivo abre no Collabora, faça uma alteração inofensiva, aguarde a conclusão da gravação e feche o editor.
- Reabra o arquivo no Seafile e verifique se a alteração persistiu. Para uma verificação mais completa, baixe uma cópia e confirme o conteúdo esperado.
Faça o teste com um arquivo que você possa modificar com segurança. Um editor visível, mas sem a possibilidade de salvar o arquivo corretamente, representa apenas um sucesso parcial: o WOPI precisa conseguir recuperar o arquivo e enviar a versão editada para o Seafile.
Falhas comuns e qual lado verificar
| Sintoma | Primeiras verificações |
| A Seafile informa que o escritório online está indisponível. | Verifique o URL de descoberta e se o Seahub foi reiniciado após a alteração das configurações OFFICE_SERVER_TYPE.ENABLE_OFFICE_WEB_APP |
| A descoberta funciona a partir do servidor, mas o navegador exibe um editor em branco. | Verifique se o navegador consegue acessar o nome de host público do Collabora via HTTPS e se os caminhos do proxy e os certificados TLS estão corretos. Um nome de host interno do Docker não é automaticamente acessível ao navegador do usuário. |
| O editor carrega, mas o arquivo não pode ser obtido ou salvo. | Verifique os registros do Collabora e do Seafile, o acesso mútuo à rede, a confiança no certificado HTTPS e as solicitações WOPI. O Seafile documenta o fluxo de solicitações da seguinte forma: o Seahub cria o iframe, o navegador carrega o Collabora e o Collabora solicita o conteúdo do arquivo ao Seahub. |
| Apenas alguns arquivos do Office abrem | Verifique as tuplas de extensão de pré-visualização e edição, o limite de tamanho de pré-visualização do Seafile e os formatos suportados pela versão do Collabora instalada. |
Para logs do Docker, consulte os documentos do Seafile docker logs seafile-collabora. Verifique os logs do Seafile/Seahub juntamente com a saída do Collabora e correlacione as solicitações no proxy. Não habilite o registro detalhado ou em arquivo indefinidamente se isso expor URLs de documentos ou outros detalhes operacionais confidenciais. O guia oficial de solução de problemas do Collabora fornece verificações adicionais para falhas no lado do Collabora.
Qual opção faz sentido?
Escolha o contêiner integrado quando sua instalação do Seafile for um único host Docker, você precisar da infraestrutura Compose compatível e o compartilhamento de CPU e memória com o Seafile for aceitável. Escolha um host Collabora separado quando você já opera um, precisa de capacidade independente ou cronogramas de atualização, ou está integrando uma arquitetura com vários hosts e pode manter HTTPS e roteamento de rede de forma confiável. Em ambos os casos, siga a documentação correspondente à sua versão do Seafile, mantenha os endpoints voltados para o navegador seguros e verifique a abertura e o salvamento de documentos antes de permitir que os usuários utilizem a edição online.