Monte sua própria nuvem com o Nextcloud
O Nextcloud é um software de nuvem que mantém seus arquivos, calendário e contatos no seu próprio servidor. O manual oficial do administrador pede pelo menos 128 MB de memória por processo PHP e recomenda 512 MB. O que realmente decide é o espaço em disco que seus arquivos vão ocupar e quantas pessoas o usam ao mesmo tempo.
Este artigo trata dos requisitos oficiais, das configurações de desempenho, dos backups e do que fazer nos primeiros dias.
O que você faz com o Nextcloud?
Você sincroniza seus arquivos entre computadores e celulares, envia arquivos a outras pessoas com links de compartilhamento e mantém seu calendário e sua lista de contatos no seu próprio servidor. Os apps de computador e de celular só precisam do endereço do seu servidor. Os novos recursos vêm como apps, e cada app acrescenta alguma carga de memória e de CPU ao servidor.
Requisitos oficiais
| Tema | O que diz o manual oficial do administrador |
|---|---|
| Memória | Pelo menos 128 MB por processo, 512 MB recomendados. O atualizador embutido precisa de pelo menos 256 MB. |
| Banco de dados | MariaDB e PostgreSQL são recomendados, e o MySQL também é citado. O SQLite serve apenas para testes e instalações muito pequenas. O MySQL e o MariaDB precisam do InnoDB. |
| Servidor web | Recomenda-se o Apache 2.4 com PHP-FPM ou mod_php. O Nginx com PHP-FPM também é compatível. |
| PHP | As versões compatíveis mudam com a versão do Nextcloud, então confira a tabela atual no manual. |
| Cache | Recomenda-se o APCu com Redis (ou Valkey). Não é obrigatório, mas pode melhorar bastante o desempenho. |
| Tarefas em segundo plano | Recomenda-se o cron, executando a cada 5 minutos. |
O que significa "memória por processo"?
O Nextcloud roda em PHP, e cada requisição simultânea é um processo PHP separado. O valor de memória do manual é por processo. O pool padrão do PHP-FPM permite 5 requisições ao mesmo tempo (pm.max_children = 5). O manual sugere calcular esse valor a partir da sua RAM e parte de 50-100 MB por worker. Como fórmula aproximada, divida a RAM que você dá ao PHP pela memória por worker. Se você definir o valor alto demais, o sistema cai no swap, que o manual diz ser pior do que deixar as requisições na fila.
Disco: seus arquivos ficam no servidor
No Nextcloud, os arquivos são guardados no disco do servidor. À medida que seu acervo de fotos e documentos cresce, o limite muitas vezes é o disco antes de ser a RAM. Olhe a coluna de disco ao escolher um servidor. Na Seturack, aumentar um servidor também aumenta o disco, enquanto reduzir não o diminui. Um disco que cresceu não encolhe de volta, então tenha isso em mente.
Resumo da instalação manual
- Prepare o servidor: Ubuntu, Apache ou Nginx com PHP-FPM e MariaDB ou PostgreSQL.
- Aponte um domínio para o servidor e obtenha um certificado HTTPS. O primeiro passo está em como conectar seu próprio domínio.
- Instale o Nextcloud pelo instalador web ou pela linha de comando.
- Passe as tarefas em segundo plano para o cron. Abra o crontab do usuário do servidor web:
crontab -u www-data -eDepois adicione esta linha:*/5 * * * * php -f /var/www/nextcloud/cron.php - Nas configurações de administração, defina o modo das tarefas em segundo plano como Cron.
- Adicione o cache APCu e Redis.
- Configure um servidor de e-mail para redefinições de senha e notificações.
- Monte seu plano de backup e teste uma restauração.
Backups
A documentação do Nextcloud pede que você faça backup da pasta config, da pasta data, da pasta theme e do banco de dados. Se você tem uma pasta de apps personalizada, inclua-a também. Para um backup consistente, ative primeiro o modo de manutenção e desative-o quando terminar:
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off
O caminho nos comandos depende de onde você instalou o Nextcloud. A Seturack faz backup do seu servidor toda noite e mantém os últimos 7 dias. Complemente isso com um dump do banco de dados e uma cópia dos arquivos, e guarde uma cópia dos dados importantes também fora do servidor.
Quando o servidor deve crescer?
- O disco está quase cheio: Confira com
df -h. Como seus arquivos ficam no disco, esse costuma ser o primeiro limite. - O sistema usa swap: Se a linha de swap na saída do
free -hestiver enchendo, a RAM não basta. - As páginas abrem devagar ou os usuários entram em fila: Aumente o número de workers PHP de acordo com a sua RAM. Se a RAM não comportar isso, aumente o servidor.
Aumentar o servidor não o exclui, e seu endereço IP e seus dados continuam os mesmos.
Erros comuns
- Começar com o SQLite. O manual o considera adequado só para testes e instalações muito pequenas, e trocar de banco de dados depois dá trabalho.
- Deixar as tarefas em segundo plano no modo AJAX padrão. O manual o descreve como a opção menos confiável, então passe para o Cron.
- Pular o cache. Ele não é obrigatório, mas, segundo o manual, pode melhorar bastante o desempenho.
- Nunca testar o backup. Um backup que você não consegue restaurar não serve para nada.
Segurança
- Não use a conta de administrador no trabalho diário. Crie contas separadas para a sua equipe.
- Ative um dos apps de autenticação em dois fatores.
- Mantenha o Nextcloud e o PHP atualizados. As atualizações ficam por sua conta depois da instalação.
- Sirva o site apenas por HTTPS.
Um Nextcloud pronto na Seturack
Se você escolher o Nextcloud ao fazer o pedido, o banco de dados, o cache e as tarefas em segundo plano já vêm configurados e nenhum assistente de configuração aparece. O site abre por HTTPS em um endereço sslip.io derivado do seu endereço IP. O nome de login é yonetici ("admin" em turco), e a senha está no painel. A primeira configuração pode demorar um pouco. Depois do primeiro login, troque sua senha, crie contas para a sua equipe e configure o servidor de e-mail. Os passos estão no artigo de ajuda do Nextcloud.
Se o disco começar a encher, você pode aumentar o servidor pelo painel. Se quiser começar pela instalação pronta, veja a página do servidor Nextcloud.
Comentários0
Ainda não há comentários
Seja a primeira pessoa a compartilhar sua opinião.
Entre ou crie uma conta para deixar um comentário.