Como instalar o ownCloud Infinite Scale com Docker Compose no Ubuntu

Você conclui a instalação do Docker Compose, executa o comando docker compose up -de ainda não consegue acessar o ownCloud. Esse é o padrão de falha prática mais comum com o Infinite Scale: os contêineres podem existir, mas problemas com DNS, TLS, caminhos de armazenamento ou alguma variável de ambiente necessária impedem que a infraestrutura se torne utilizável.

Este guia utiliza a abordagem Docker Compose orientada à produção, documentada pela ownCloud, para uma implantação em servidor único. A página de documentação atual da ownCloud está publicada na seção de documentação de desenvolvimento da versão 9.0, mas indica explicitamente que o exemplo de produção disponível para download utiliza a versão estável mais recente e, atualmente, aponta para a branch estável 8.2. Essa distinção é importante: não copie as tags da imagem de desenvolvimento para um servidor de produção, a menos que você queira intencionalmente uma versão de desenvolvimento.

A configuração abaixo é adequada para uso doméstico e pequenas organizações que desejam uma instância do Infinite Scale por trás de um proxy reverso com HTTPS. Ela pressupõe o uso do Ubuntu LTS, Docker Engine, o plugin Docker Compose, um domínio controlado pelo usuário e acesso de administrador ao servidor. O exemplo de produção do ownCloud recomenda aproximadamente 4 a 6 GB de RAM para os serviços padrão habilitados e requer, no mínimo, o domínio ownCloud; integrações opcionais para escritórios exigem seus próprios subdomínios.

Antes de começar: resolva primeiro as questões de rede e armazenamento.

Não comece baixando os arquivos do Compose. Primeiro, confirme os itens mais difíceis de corrigir depois que o stack já estiver em execução:

  • DNS: o nome de host escolhido, como ocis.example.com, deve ser resolvido para o endereço IP público do servidor.
  • Firewall e NAT: uma instalação voltada para a internet precisa que as portas TCP 80 e 443 estejam acessíveis para o proxy reverso e o fluxo de certificados. Normalmente, é necessário SSH na porta TCP 22 para administração.
  • Armazenamento persistente: os volumes gerenciados pelo Docker são convenientes, mas os sistemas de produção geralmente se beneficiam de caminhos definidos para dados de configuração e do usuário, facilitando backups e planejamento de capacidade.
  • Remetente de e-mail: o exemplo documentado do ownCloud exige SMTP_SENDERque ele seja configurado, mesmo que você ainda não tenha configurado um servidor SMTP de retransmissão em funcionamento.

Esses requisitos estão documentados no guia oficial de instalação do servidor ownCloud Infinite Scale . Para o Docker em si, utilize as instruções de instalação atuais do Docker Engine para Ubuntu e as instruções do plugin Compose, em vez de depender de pacotes de distribuição potencialmente mais antigos.

1. Verifique o Docker e o Docker Compose.

No servidor, primeiro atualize o sistema operacional e, em seguida, verifique se o Docker Engine e o plugin Compose estão disponíveis:

sudo apt-get update && sudo apt-get upgrade
docker --version
docker compose version

O importante não é o número da versão exibido por esses comandos. Você está confirmando que ambos os comandos foram executados com sucesso e que o Compose está disponível docker compose. O guia do ownCloud recomenda instalar o Docker a partir do repositório oficial do Docker, em vez de depender dos pacotes Docker embutidos no Ubuntu, que podem estar desatualizados.

Terminal do Ubuntu mostrando os comandos `docker --version` e `docker compose version` usados ​​para verificar os pré-requisitos do Docker.
Verifique se o Docker Engine e o plugin Docker Compose estão instalados antes de baixar o pacote ownCloud.

2. Baixe o exemplo oficial e estável do Compose.

O ownCloud fornece um exemplo completo de implantação do Compose, em vez de exigir que os administradores criem uma infraestrutura de produção do zero. No momento da verificação, a documentação indica que o download de produção atual é baseado na stable-8.2branch, pois a documentação da versão 9.0 ainda está marcada como em desenvolvimento.

O fluxo de trabalho oficial baixa o deployments/examples/ocis_fulldiretório, transfere o arquivo resultante para o servidor e o extrai em um caminho como /opt/compose/ocis/ocis_full. O nome exato do arquivo pode mudar com a versão estável, portanto, use o link de download mostrado na documentação atual do ownCloud em vez de inserir um nome de arquivo fixo de um tutorial antigo.

Após a extração, acesse o diretório de implantação e inspecione o conteúdo:

cd /opt/compose/ocis/ocis_full
ls -la

Você deverá ver os arquivos Compose, o diretório de configuração e .envo arquivo fornecidos pelo exemplo. Se estiver atualizando um exemplo extraído já existente, faça um backup .envprimeiro; o ownCloud avisa que extrair um pacote mais recente pode sobrescrevê-lo.

3. Configure o arquivo .env com cuidado.

A maioria dos problemas iniciais de inicialização surge do arquivo de ambiente. Edite-o .envno diretório extraído e configure as opções em uma ordem específica.

Defina o domínio público.

Defina OCIS_DOMAINo nome do host que já resolve para o servidor, por exemplo, `https://example.com` ocis.example.com. Se você habilitar o Collabora ou o ONLYOFFICE, configure também os nomes de host documentados para eles. Não use um domínio .envque seja diferente dos seus registros DNS.

Preparar TLS

Para uma implementação voltada para a internet, o exemplo oficial usa Traefik e Let's Encrypt. Defina TRAEFIK_ACME_MAILum endereço de e-mail real que você controle. A ownCloud recomenda usar primeiro a Autoridade Certificadora (CA) de teste do Let's Encrypt, confirmando que a emissão do certificado funciona, e somente então migrar para a produção. Isso reduz a chance de atingir os limites de taxa do Let's Encrypt durante a solução de problemas.

Selecione os locais de dados e configuração.

Se você deseja armazenamento montado no host, defina OCIS_CONFIG_DIRos OCIS_DATA_DIRcaminhos persistentes planejados. Certifique-se de que o sistema de arquivos subjacente tenha capacidade suficiente e que seu processo de backup inclua tanto a configuração quanto os dados.

Defina um remetente SMTP

No mínimo, defina SMTP_SENDER. Você pode adicionar o host SMTP completo, a porta, o nome de usuário, a senha, o método de autenticação e as configurações de segurança quando estiver pronto para enviar notificações.

Editor de texto exibindo um arquivo .env do ownCloud com as variáveis ​​de ambiente OCIS_DOMAIN, TRAEFIK_ACME_MAIL, SMTP_SENDER, OCIS_CONFIG_DIR e OCIS_DATA_DIR.
O arquivo .env central controla o domínio, o e-mail de contato do certificado, o remetente do e-mail e os caminhos de armazenamento persistente.

4. Valide a configuração do Compose e, em seguida, inicie o stack.

Antes de baixar e iniciar os contêineres, peça ao Compose para renderizar e validar a configuração montada:

docker compose config

Se isso falhar, corrija a sintaxe ou as variáveis ​​ausentes antes de continuar. Essa verificação é muito mais rápida do que diagnosticar uma implantação parcialmente iniciada.

Terminal Ubuntu no diretório de implantação do ownCloud com o comando docker compose config pronto para validar a pilha montada.
Execute o comando `docker compose config` antes da inicialização para que problemas de sintaxe e variáveis ​​sejam detectados precocemente.

Quando a configuração for renderizada com sucesso, inicie a implantação no modo desanexado:

docker compose up -d

O Compose irá baixar as imagens necessárias e iniciar os serviços definidos pelo exemplo. Na primeira execução, isso pode demorar mais, pois as imagens precisam ser baixadas e certificados podem ser solicitados.

Terminal do Ubuntu no diretório de implantação do ownCloud mostrando o comando `docker compose up -d` usado para iniciar o conjunto de ferramentas.
Inicie o stack ownCloud Infinite Scale configurado com docker compose up -d.

Se a primeira tentativa falhar, solucione o problema da maneira mais fácil para a mais difícil.

Verificar estado do contêiner

Comece pela visualização "Compor" em vez de tentar adivinhar qual serviço falhou:

docker compose ps -a --format "table {{.Service}}	{{.State}}	{{.ID}}"

Um serviço que é encerrado repetidamente é mais útil do que um erro do navegador, pois permite restringir o problema a um único contêiner.

Leia os logs do Traefik em busca de problemas com certificados.

O guia do ownCloud recomenda especificamente verificar o Traefik primeiro quando o HTTPS não estiver funcionando. As causas típicas incluem um e-mail de contato ACME inválido, portas 80/443 fechadas ou DNS que retorna NXDOMAIN ou aponta para o IP errado. Após corrigir um problema com o ACME, siga as instruções oficiais para remover apenas o volume de certificado que contém os dados do teste com falha. Não exclua todos os volumes.

Verifique os registros do serviço ownCloud.

Encontre o ID do contêiner com docker compose ps, depois inspecione seus registros:

docker logs -f <container_id>

O processo de inicialização pode criar a configuração inicial na primeira execução. O ownCloud documenta o padrão de comando ocis init || true; ocis serverpara implantações do Compose, de modo que a inicialização seja ignorada quando a configuração já existir.

Não use o comando `docker compose down -v` de forma leviana.

Para interromper a implantação, use:

docker compose down --remove-orphans

Não adicione -vvolumes a menos que deseje removê-los intencionalmente. O ownCloud avisa explicitamente que isso pode excluir dados de implantação. Se for necessário remover um volume de certificado descartável durante a solução de problemas de TLS, exclua-o seletivamente.

Como verificar se a instalação foi realmente concluída

Uma docker compose up -dverificação bem-sucedida requer apenas uma etapa. Verifique o resultado em quatro níveis:

  1. DNS: o nome de host público resolve para o endereço correto do servidor.
  2. TLS: o navegador acessa o site via HTTPS sem aviso de certificado. Se você usou intencionalmente a CA de teste do Let's Encrypt, verifique primeiro o certificado de teste e, em seguida, altere para o certificado de produção conforme documentado.
  3. Contêineres: docker compose ps -a mostra os serviços esperados em execução, em vez de reinicializados ou encerrados.
  4. Aplicação: você pode abrir o URL do ownCloud configurado, fazer login com as credenciais de administrador iniciais que você definiu ou recuperou, criar uma pasta e carregar um pequeno arquivo de teste.

Para uma nova instalação, a documentação indica que o nome de usuário padrão do administrador é <username> admin, e a senha pode ser definida manualmente durante a configuração ou obtida através do log de inicialização/procedimentos de redefinição documentados. Altere a senha inicial imediatamente e não deixe uma instalação de produção com as credenciais padrão conhecidas.

Após o serviço básico de arquivos estar funcionando, adicione componentes de colaboração opcionais ou integrações mais avançadas. Fazer isso depois que a implantação principal estiver funcionando corretamente facilita muito a solução de problemas, pois uma falha em um pacote de escritório, provedor de identidade externo ou serviço antivírus não estará mais misturada com problemas básicos de DNS e TLS.

Notas de manutenção para uma implantação estável

Antes de uma atualização, faça backup de seus dados e configurações e leia as notas de migração específicas da versão. A documentação do ownCloud distingue entre atualizações de rotina de imagens e upgrades que podem exigir alterações de configuração. Uma sequência comum de manutenção é interromper o sistema, baixar as imagens e reiniciar com a limpeza de instâncias órfãs, mas você ainda deve consultar o guia de atualização específico da versão antes de alterar a versão.

Para um servidor de produção, monitore também o uso do disco. Volumes gerenciados pelo Docker são fáceis de configurar inicialmente, mas o crescimento do armazenamento pode surpreender quando o sistema operacional e os arquivos do usuário compartilham o mesmo sistema de arquivos. Se você espera um volume substancial de dados, use caminhos de armazenamento dedicados desde o início ou migre-os usando o procedimento de volume documentado e a propriedade correta para o usuário do contêiner.

Deixar um comentário

10 Melhores Ferramentas de Varredura de Ping para Encontrar Dispositivos na Sua Rede

10 Melhores Ferramentas de Varredura de Ping para Encontrar Dispositivos na Sua Rede

Compare 10 ferramentas de varredura de ping para descoberta rápida de LAN, varredura multiplataforma e gerenciamento de endereços IP. Saiba o que uma varredura pode — e não pode — revelar.

6 Melhores Ferramentas de Gerenciamento de Rede para Monitorar o Desempenho

6 Melhores Ferramentas de Gerenciamento de Rede para Monitorar o Desempenho

Compare seis ferramentas de gerenciamento de rede para monitoramento de desempenho, incluindo cobertura SNMP, mapeamento, alertas, modelos de implantação e custo-benefício.

Melhores analisadores de Wi-Fi para Windows, iOS e Android

Melhores analisadores de Wi-Fi para Windows, iOS e Android

Compare as melhores opções de analisadores de Wi-Fi para Windows, iPhone e Android, incluindo ferramentas para congestionamento de canais, cobertura de sinal, mapas de calor e solução de problemas de rede.

Monitor de Ping: 7 ferramentas gratuitas e de código aberto para disponibilidade de rede

Monitor de Ping: 7 ferramentas gratuitas e de código aberto para disponibilidade de rede

Compare sete monitores de ping gratuitos e de código aberto, desde suítes completas de rede até sondas de latência específicas, e escolha a opção mais adequada para disponibilidade, perda de pacotes e histórico.

Taxa de transferência de rede versus largura de banda: o que significam e como afetam o desempenho

Taxa de transferência de rede versus largura de banda: o que significam e como afetam o desempenho

Veja como a taxa de transferência de rede difere da largura de banda, o que causa desempenho lento ou instável e quais ferramentas podem testar um caminho ou monitorar o tráfego.

Melhor software de servidor SFTP para transferências seguras de arquivos

Melhor software de servidor SFTP para transferências seguras de arquivos

Compare softwares de servidor SFTP confiáveis ​​para Windows e Linux, incluindo OpenSSH, Bitvise, SolarWinds e SFTPGo. Encontre a solução ideal para suas necessidades de segurança e transferência de arquivos.

Melhores práticas de monitoramento de rede: o que monitorar e quais ferramentas usar

Melhores práticas de monitoramento de rede: o que monitorar e quais ferramentas usar

Crie um monitoramento de rede prático com cobertura clara de dispositivos, métricas de desempenho úteis, alertas acionáveis ​​e uma comparação entre SolarWinds NPM, PRTG e OpManager.

As 7 melhores ferramentas de gerenciamento de endereços IP para equipes de rede

As 7 melhores ferramentas de gerenciamento de endereços IP para equipes de rede

Compare sete ferramentas de gerenciamento de endereços IP para descoberta de sub-redes, coordenação de DNS e DHCP, inventário de rede e IPAM de código aberto.

10 Melhores Ferramentas de Varredura de Rede para Descobrir Dispositivos e IPs

10 Melhores Ferramentas de Varredura de Rede para Descobrir Dispositivos e IPs

Compare ferramentas de varredura de rede para descoberta rápida de dispositivos, varreduras de IP multiplataforma e IPAM corporativo, com orientações sobre como escolher a opção mais adequada para sua rede.

6 ferramentas de monitoramento de rede Linux para dispositivos, hosts e tráfego.

6 ferramentas de monitoramento de rede Linux para dispositivos, hosts e tráfego.

Compare seis ferramentas de monitoramento de rede Linux para descoberta de dispositivos SNMP, gráficos de interface, métricas de host, verificação de serviços e fluxos de tráfego.