Solução da comunidade

Nextcloud + MySQL no CasaOS: o que ainda se aplica atualmente

A September 2023 community post shared a video tutorial for deploying Nextcloud with MySQL on CasaOS, but the post itself did not document the exact configuration steps.

A ideia central deste tutorial de 2023 sobre o CasaOS continua válida: o Nextcloud pode utilizar o MySQL ou o MariaDB como base de dados. O que não deve ser copiado cegamente é um guia antigo de contentores cujas etiquetas exatas das imagens, variáveis de ambiente, comportamento da rede e versões da base de dados podem ter mudado.

Para uma implementação atual, utilize uma versão da base de dados compatível com a versão atual do Nextcloud, atribua armazenamento persistente a ambos os serviços, ligue-os através de uma rede Docker estável e refira-se à base de dados pelo nome do serviço/contentor, em vez de utilizar um endereço IP de contentor codificado.

O que a publicação original realmente continha

A publicação no fórum apresentava um guia em vídeo para configurar o MySQL com o Nextcloud no CasaOS. Não publicava no texto da discussão o ficheiro Docker Compose nem os valores de configuração do tutorial, pelo que não existe uma base fiável para reconstruir esses passos antigos apenas a partir da página do fórum.

Esta distinção é importante porque um vídeo de 2023 pode continuar a explicar corretamente a arquitetura, embora mostre etiquetas de imagens ou campos de configuração que entretanto ficaram obsoletos.

O Nextcloud continua a suportar MySQL e MariaDB

Os requisitos do sistema do Nextcloud atuais indicam as famílias e versões de bases de dados suportadas. O MySQL continua a ser suportado, enquanto o MariaDB e o PostgreSQL também são opções comuns.

Utilize os requisitos correspondentes à versão principal exata do Nextcloud que está a instalar. Evite fixar uma imagem de base de dados com vários anos apenas porque aparece num tutorial antigo.

Utilize uma rede Docker estável, não endereços IP de contentores

Quando o Nextcloud e a base de dados são executados em contentores separados, coloque-os na mesma rede Docker definida pelo utilizador ou no mesmo projeto Compose e defina o anfitrião da base de dados como o nome do serviço da base de dados. Os endereços IP dos contentores podem mudar após a recriação ou o reinício.

O ZimaOS atual suporta implementações Compose com vários contentores. Se estiver a passar de um tutorial antigo do CasaOS para o ZimaOS atual, o guia de hardware do Nextcloud fornece contexto sobre o dimensionamento antes da implementação.

Torne persistentes os dados do Nextcloud e da base de dados

A aplicação Web e a base de dados têm necessidades de persistência diferentes. Atribua armazenamento durável à configuração/dados do Nextcloud e ao diretório de dados da base de dados. A recriação de um contentor não deve apagar o estado de nenhum dos serviços.

Não trate um diretório de base de dados em funcionamento como uma pasta comum para cópias de segurança. Um despejo consistente da base de dados, um fluxo de trabalho com suporte para instantâneos ou uma cópia de segurança consciente da aplicação é mais seguro. O guia de cópia de segurança de contentores de bases de dados explica por que razão a consistência é importante.

O que introduzir no instalador do Nextcloud

O assistente de instalação atual do Nextcloud solicita as credenciais da base de dados e o anfitrião da base de dados. Numa stack Compose, esse anfitrião deve normalmente ser o nome do serviço da base de dados, acrescido de uma porta apenas quando for necessária uma porta não predefinida.

Não exponha a porta da base de dados à LAN mais ampla, a menos que outro anfitrião necessite realmente dela. Normalmente, o Nextcloud e a respetiva base de dados só precisam de comunicar através da sua rede Docker.

Em resumo

A arquitetura do antigo tutorial do CasaOS — Nextcloud mais uma base de dados SQL separada — continua a fazer sentido, mas utilize os requisitos atuais do projeto em vez de copiar versões de imagens ou detalhes de rede de 2023. Os volumes persistentes e a rede estável baseada nos nomes dos serviços são os elementos que vale a pena manter.