Como Instalar o Nextcloud em um VPS
Escrito pela equipe ApexVPS • Última atualização: julho de 2026 • leitura de 9 min
Este guia de configuração de nextcloud vps mostra como hospedar sua própria nuvem privada — arquivos, calendários, contatos e fotos — em um servidor que você controla totalmente. Executar o Nextcloud em um VPS oferece recursos dedicados, acesso root completo e sem assinatura por usuário, então seus dados permanecem seus. Abaixo, você encontrará os pré-requisitos, dois caminhos de instalação comprovados (Docker Compose ou uma pilha LAMP manual), como adicionar HTTPS com Let's Encrypt, além das etapas de ajuste e backup que mantêm o servidor rápido e seguro. Cada comando tem como alvo um servidor Ubuntu ou Debian recém-instalado.
Por que hospedar o Nextcloud em um VPS por conta própria?
O Nextcloud é uma plataforma de código aberto que substitui o Google Drive, o Dropbox e grande parte de um pacote de produtividade por software que você mesmo executa. Um VPS é o lar natural para ele: ao contrário da hospedagem compartilhada, você tem acesso root, custo mensal fixo e desempenho previsível. Em um VPS verdadeiramente dedicado, não há vizinhos barulhentos competindo pela CPU, o que importa quando várias pessoas estão sincronizando arquivos ao mesmo tempo. Se você está avaliando quais serviços vale a pena executar por conta própria, nossa visão geral sobre como escolher um VPS para auto-hospedagem compara as cargas de trabalho comuns e quanta folga cada uma precisa.
Pré-requisitos antes de começar
Você precisa de três coisas: um VPS com Ubuntu 22.04/24.04 ou Debian 12, um nome de domínio para o qual você possa editar o DNS e acesso SSH ao servidor como um usuário com sudo. Um domínio não é estritamente necessário para testes, mas você não pode emitir um certificado TLS confiável sem um, então trate-o como obrigatório para uso real.
Escolhendo o tamanho certo do VPS
O dimensionamento depende de quantas pessoas usam o servidor e se você armazena mídia. Para um único usuário ou uma família sincronizando documentos, 2 vCPU e 4 GB de RAM é confortável. Uma vez que você adiciona os aplicativos de Fotos, Memórias ou mídia, ou traz mais de um punhado de contas ativas, suba para um plano de nível Business ou superior — a RAM extra, o NVMe mais rápido e os snapshots por hora tornam a geração de miniaturas e as prévias muito mais suaves. Você pode comparar os níveis em nossa página de preços de VPS; escalar depois é rápido, então não há problema em começar modesto e crescer.
Aponte seu domínio para o servidor
Crie um registro A (e um registro AAAA se você usar IPv6) que aponte um nome de host como cloud.example.com para o IP público do seu servidor. O DNS pode levar um tempo para propagar. Confirme se está resolvendo antes de solicitar um certificado:
dig +short cloud.example.com
Caminho 1 — Nextcloud com Docker Compose
Contêineres são a maneira mais rápida de obter uma instalação limpa e reproduzível, e eles mantêm o Nextcloud, seu banco de dados e cache isolados do resto do sistema. Se contêineres são novos para você, nosso guia para iniciantes sobre Docker em um VPS cobre os fundamentos primeiro. Instale o Docker usando o script de conveniência oficial e, em seguida, adicione seu usuário ao grupo docker:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
# log out and back in so the group change takes effect
Crie uma pasta de projeto e um compose.yaml que execute o Nextcloud com MariaDB e Redis. O aplicativo está vinculado a 127.0.0.1:8080, então só é alcançável através do proxy reverso que você adicionará depois, não diretamente da internet:
mkdir ~/nextcloud && cd ~/nextcloud
nano compose.yaml
services:
db:
image: mariadb:10.11
restart: always
command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
volumes:
- db:/var/lib/mysql
environment:
- MARIADB_ROOT_PASSWORD=change-this-root-password
- MYSQL_PASSWORD=change-this-db-password
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
redis:
image: redis:alpine
restart: always
app:
image: nextcloud:apache
restart: always
ports:
- "127.0.0.1:8080:80"
depends_on:
- db
- redis
volumes:
- nextcloud:/var/www/html
environment:
- MYSQL_HOST=db
- MYSQL_DATABASE=nextcloud
- MYSQL_USER=nextcloud
- MYSQL_PASSWORD=change-this-db-password
- REDIS_HOST=redis
volumes:
db:
nextcloud:
Inicie o stack e verifique se todos os três contêineres sobem:
docker compose up -d
docker compose ps
O Nextcloud agora está ouvindo em localhost:8080. Avance para a seção TLS para expô-lo com segurança via HTTPS.
Caminho 2 — Instalação manual em uma pilha LAMP
Se você prefere gerenciar os componentes você mesmo, uma instalação clássica Linux, Apache, MariaDB e PHP (LAMP) oferece controle total. Atualize o sistema e instale o servidor web, o banco de dados e as extensões PHP que o Nextcloud espera:
sudo apt update && sudo apt upgrade -y
sudo apt install -y apache2 mariadb-server libapache2-mod-php unzip \
php php-gd php-mysql php-curl php-mbstring php-intl php-xml \
php-zip php-bcmath php-gmp php-imagick
Proteja o banco de dados e, em seguida, crie um banco de dados e um usuário dedicados:
sudo mysql_secure_installation
sudo mysql -u root -p
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'change-this-db-password';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Baixe a versão mais recente para a raiz da web e defina a propriedade para que o Apache possa gravar nela:
cd /var/www
sudo wget https://download.nextcloud.com/server/releases/latest.zip
sudo unzip latest.zip
sudo chown -R www-data:www-data /var/www/nextcloud
Crie um host virtual Apache para o seu domínio, habilite-o junto com os módulos que o Nextcloud precisa e recarregue:
sudo a2enmod rewrite headers env dir mime
sudo a2ensite nextcloud.conf
sudo systemctl reload apache2
Proteja-o com TLS (Let's Encrypt)
Nunca execute o Nextcloud por HTTP simples — logins e arquivos trafegariam sem criptografia. O Certbot do projeto Let's Encrypt emite um certificado gratuito e confiável e o renova automaticamente. Para a instalação manual do Apache, use o plug-in Apache:
sudo apt install -y certbot python3-certbot-apache
sudo certbot --apache -d cloud.example.com
Para o caminho Docker, coloque o Nginx na frente como um proxy reverso que encaminha para 127.0.0.1:8080, e então deixe o Certbot protegê-lo:
sudo apt install -y nginx certbot python3-certbot-nginx
sudo certbot --nginx -d cloud.example.com
O Certbot instala um temporizador systemd que renova os certificados antes de expirarem. Você pode confirmar que a renovação funciona com uma execução de teste:
sudo certbot renew --dry-run
Configuração inicial
Abra https://cloud.example.com em um navegador. Na tela de configuração, crie sua conta de administrador e, para a instalação manual, informe o nome do banco de dados, usuário e senha que você criou anteriormente (a imagem Docker já está conectada ao seu banco de dados, então ela pula essa etapa). Conclua o assistente e o Nextcloud cai na visão de Arquivos. Adicione imediatamente seu domínio à lista de trusted_domains se aparecer um aviso — para Docker isso significa editar a configuração dentro do contêiner:
docker compose exec -u www-data app \
php occ config:system:set trusted_domains 1 --value=cloud.example.com
Na instalação manual, o mesmo comando é executado a partir do diretório de instalação com sudo -u www-data php /var/www/nextcloud/occ .... A ferramenta de linha de comando occ é seu principal ponto de entrada de administração a partir daqui.
Ajustes e tarefas em segundo plano
Uma instalação padrão funciona, mas algumas mudanças fazem uma diferença real. Mude as tarefas em segundo plano de AJAX para cron do sistema para que as tarefas sejam executadas de forma confiável mesmo quando ninguém estiver conectado. Na instalação manual, adicione uma entrada cron para o usuário da web:
sudo crontab -u www-data -e
# add this line, then save:
*/5 * * * * php -f /var/www/nextcloud/cron.php
Em seguida, defina a opção "Cron" em Administração → Configurações básicas. Outros ajustes que valem a pena: aumente o PHP memory_limit para pelo menos 512M, habilite o Redis para bloqueio de arquivos e cache (já incluído no arquivo Compose acima) e defina uma janela de manutenção para que tarefas pesadas sejam executadas durante a noite. Executar as verificações integradas ajuda a detectar algo ausente:
sudo -u www-data php /var/www/nextcloud/occ status
sudo -u www-data php /var/www/nextcloud/occ setupchecks
Backups que você pode realmente restaurar
Os snapshots do seu VPS são a primeira linha de defesa — backups diários no Starter Pro, snapshots de hora em hora no Business e Enterprise — mas um bom hábito é um backup separado em nível de aplicativo que você possa restaurar arquivo por arquivo. Coloque o Nextcloud em modo de manutenção, despeje o banco de dados, arquive o diretório de dados e depois desative o modo de manutenção:
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --on
mysqldump --single-transaction -u nextcloud -p nextcloud > nextcloud-db.sql
sudo tar -czf nextcloud-data.tar.gz /var/www/nextcloud/data
sudo -u www-data php /var/www/nextcloud/occ maintenance:mode --off
Para a instalação Docker, execute as mesmas chamadas occ através do docker compose exec -u www-data app php occ ... e faça backup dos volumes nomeados. Guarde pelo menos uma cópia fora do servidor e teste uma restauração ocasionalmente — um backup não testado é apenas uma esperança.
Mantendo-o em funcionamento
Atualize o Nextcloud através do atualizador integrado ou da interface web logo após cada lançamento, mantenha o sistema operacional atualizado com sudo apt upgrade e revise o painel de avisos de Segurança e configuração na área administrativa. Com proteção DDoS, rede privada e monitoramento 24/7 no lado da infraestrutura, e Let's Encrypt mais atualizações regulares no lado do aplicativo, um Nextcloud auto-hospedado é uma alternativa genuinamente confiável aos grandes suítes de nuvem.
Perguntas frequentes
Quanta RAM uma configuração de VPS Nextcloud precisa?
Para um usuário ou uma família sincronizando documentos, 4 GB de RAM e 2 vCPU é confortável. Adicione bibliotecas de fotos ou vídeos, geração de pré-visualizações ou vários usuários ativos e um plano Business-class com 8 GB de RAM e NVMe mais rápido é um ajuste melhor. Enterprise adiciona 16 GB e NVMe RAID para equipes maiores.
Devo escolher o Docker ou a instalação manual LAMP?
Escolha Docker Compose se quiser uma stack limpa e repetível, fácil de mover ou reconstruir, e o caminho manual LAMP se preferir gerenciar Apache, PHP e MariaDB diretamente. Ambos são totalmente suportados em uma VPS com acesso root; o resultado final é o mesmo Nextcloud.
Um Nextcloud auto-hospedado é seguro?
Sim, quando configurado corretamente: sirva tudo via HTTPS com certificado Let's Encrypt, mantenha o sistema operacional e o Nextcloud atualizados, use senhas fortes com autenticação de dois fatores e conte com os backups da sua VPS. Como você mesmo hospeda, nenhum terceiro tem acesso contínuo aos seus arquivos.
Preciso de um nome de domínio?
Efetivamente sim. Você pode testar com um IP bruto, mas um certificado TLS confiável exige um domínio, e os clientes de sincronização móveis e de desktop esperam um hostname HTTPS adequado. Um único domínio de baixo custo com um registro A apontando para o seu servidor é tudo o que é necessário.
Posso pagar sem cartão de crédito?
Sim. A finalização da compra na ApexVPS é somente cripto via OxaPay, aceitando Bitcoin, Ethereum, USDT e mais de 30 moedas — sem cartão de crédito ou conta bancária. O cadastro só precisa de um e-mail para enviar seus dados de acesso, além de notas opcionais como chave SSH ou sistema operacional preferido. Não é necessário nome, endereço ou KYC.