Coolify na VPS: Deploy sem Perder o Controle

6 min 2 Self Hosting Apps
Resumir com:
ChatGPT Claude Gemini Perplexity Grok
Compartilhar:
WhatsApp LinkedIn X

Se este conteúdo faz parte do seu projeto

Escolha a VPS pelo uso, não pelo excesso

Escolha pelo uso: Basic para projetos pequenos, Performance para produção com múltiplos serviços e Ultra para cargas maiores.

PlanoRecursosMensalPerfil
Basic4 vCPU · 4 GB RAM · 100 GB NVMeR$ 99Site e projeto pequeno
Performance6 vCPU · 12 GB RAM · 150 GB NVMeR$ 169Produção e múltiplos serviços
Ultra8 vCPU · 20 GB RAM · 200 GB NVMeR$ 269Cargas maiores e mais margem
Prova técnica: no benchmark publicado da VM Performance, medimos 1.855 ev/s em 6 threads, 288 ev/s em 1 thread, 11.858 MiB/s de memória e 338 MB/s de escrita sequencial, com teste direto na VM e sem Cloudflare.
Escolher Performance Falar no WhatsApp

Valores mensais exibidos para referência. A renovação segue o ciclo e o preço vigente informado no checkout antes da contratação.

Experiência prática

O que foi testado na prática

Os dados abaixo representam o teste ou material fornecido para este artigo. Quando não houver evidência própria, esta seção não é exibida.

Ambiente
Linux em VPS; cenário de deploy de aplicações com uma plataforma self-hosted; plano de referência VPS Brasil Performance com 12 GB, 6 vCPUs e 150 GB NVMe; versões devem ser registradas no momento do teste.
Limitação
O procedimento não prova disponibilidade, latência, throughput ou compatibilidade universal; o resultado depende do ambiente, dados, versão e política de rede.

Resposta rápida: A recomendação é começar pelo plano VPS Brasil Performance (12 GB, 6 vCPUs, 150 GB NVMe, R$169/mês) e validar o fluxo real com docker compose ps. O tamanho correto depende de dados, concorrência e retenção; os comandos abaixo mostram como medir sem inventar uma métrica que não foi coletada.

Coolify na VPS funciona melhor quando você separa o serviço público da operação interna: neste roteiro, o ponto de partida é uma VPS com 12 GB de RAM, 6 vCPUs e 150 GB NVMe para o cenário indicado. A primeira verificação usa docker compose ps e o objetivo é deixar claro o que pode ser afirmado, o que precisa ser medido e como voltar atrás. O conteúdo é para equipes pequenas e profissionais de infraestrutura e não apresenta teste executado na infraestrutura do leitor como resultado garantido.

O que este cenário resolve

Separar a conveniência do painel da responsabilidade sobre imagens, segredos, volumes e rollback. A decisão central é tratar deploy de aplicações com uma plataforma self-hosted como uma operação completa: aplicação, dados, identidade, logs, atualização e recuperação precisam ter responsáveis e sinais observáveis.

A pergunta operacional

Antes de instalar, escreva qual pergunta você quer responder. Em uma agência que precisa publicar vários projetos sem entregar o banco ou o painel à internet, não basta saber que o processo subiu: você precisa verificar o caminho que o usuário ou o operador realmente usará. Isso evita transformar um painel carregado, um handshake recente ou um backup verde em prova de saúde completa.

O que fica fora do escopo

Este artigo não promete latência, disponibilidade, throughput ou taxa de entrega sem medição local. Versões, plugins, tamanho dos dados, regras de rede e padrão de uso mudam o resultado. Use o procedimento como base, registre as saídas e só então ajuste o plano ou a configuração.

Recursos, portas e plano inicial

Para o recorte deste guia, o ponto inicial é o VPS Brasil Performance, com 12 GB, 6 vCPUs, 150 GB NVMe e preço de catálogo de R$169/mês. A porta ou portas relevantes são 80, 443 e a porta administrativa definida por você. Esses valores descrevem o catálogo e o desenho do laboratório; não são um benchmark do serviço.

O que medir no host

Registre RAM disponível, uso de CPU, espaço e inodes, processos, conexões e I/O antes e durante a operação. Para deploy de aplicações com uma plataforma self-hosted, a medida mais útil é a que aparece na jornada central: fila e worker, consulta e restauração, resposta HTTP, rota privada ou evento de auditoria. Um número isolado não explica uma degradação.

Quando subir de plano

Considere o VPS Brasil Performance quando o conjunto pedir 12 GB e 6 vCPUs por causa de múltiplos serviços, dados persistentes ou tarefas concorrentes; o catálogo informa 150 GB NVMe e R$169/mês. O VPS Brasil Ultra oferece 20 GB, 8 vCPUs e 200 GB NVMe por R$269/mês. A troca deve seguir métricas e um plano de janela, não uma promessa genérica.

Comparação de escolhas

A comparação abaixo reduz uma decisão ampla a quatro camadas. Em deploy de aplicações com uma plataforma self-hosted, a opção mais simples pode ser correta para um laboratório, mas a operação comercial exige atenção a persistência, acesso, evidência e retorno.

CamadaFunçãoDecisãoCuidado
Paineldeploy e variáveisdeve ficar protegidoacesso administrativo restrito
Aplicaçãotráfego públicoproxy em 80/443healthcheck e logs
Bancodados persistentesvolume separadodump e restauração testada
Registryorigem da imagemtag controladanão usar latest sem revisão

Passo a passo verificável

Execute uma etapa por vez e guarde a saída com data, versão, host e contexto. O comando de referência é docker compose ps, mas o critério de sucesso é o fluxo completo, não o fato de o comando existir.

  1. Confirme DNS, firewall, espaço em disco e um acesso de recuperação antes de instalar o painel.
  2. Suba o serviço em uma rede privada de containers e publique somente o proxy necessário.
  3. Crie um projeto de teste, registre os volumes e simule uma atualização e um retorno antes do primeiro cliente.

1. Prepare o ambiente

Confirme DNS, firewall, espaço em disco e um acesso de recuperação antes de instalar o painel.

docker version
docker compose version
ss -tulpn | head -30

2. Aplique a configuração

Suba o serviço em uma rede privada de containers e publique somente o proxy necessário.

mkdir -p ~/coolify-lab && cd ~/coolify-lab
# Use o instalador oficial da versão escolhida e revise o script antes de executá-lo.
# Não cole tokens reais no artigo ou no repositório.

3. Valide e registre

Crie um projeto de teste, registre os volumes e simule uma atualização e um retorno antes do primeiro cliente.

docker compose ps
docker compose logs --tail=100
df -h

Erros comuns e como evitá-los

Erros operacionais quase sempre aparecem na fronteira entre camadas. Revise estes pontos antes de considerar o trabalho concluído:

Publicar o painel sem uma camada de autenticação adicional

Evite publicar o painel sem uma camada de autenticação adicional. Primeiro reduza a superfície exposta e confirme a rota de administração. Um serviço pode continuar funcionando em loopback ou rede privada sem uma porta pública adicional.

Tratar volume como backup

Não tratar volume como backup. Persistência, cópia independente e restauração são controles diferentes. Registre o arquivo, volume ou destino que realmente contém a informação necessária.

Atualizar imagens sem registrar a tag anterior

Também não atualizar imagens sem registrar a tag anterior. Faça a mudança com versão, janela, healthcheck e retorno documentado. Se houver migração irreversível, trate isso como uma decisão separada.

Dar ao projeto mais permissões do que ele precisa

Por fim, não dar ao projeto mais permissões do que ele precisa. A validação deve representar o uso real, incluindo falha, reinício, permissão e dependência. Caso contrário, você só confirmou que o processo iniciou.

Practical evidence, limites e rollback

A evidência deste roteiro é uma procedimento reprodutível: ambiente Linux, comandos explícitos, versões e dados devem ser registrados por quem executar o teste. O resultado a observar em deploy de aplicações com uma plataforma self-hosted é o estado de cada etapa, a saída do comando e a resposta do fluxo central. Este lote não executou esses comandos na VPS do leitor, portanto não transforma o procedimento em medição de desempenho.

Antes de uma mudança, copie configuração e dados de forma recuperável. Depois, compare o estado esperado com o estado observado e preserve o último release ou dump válido. Se algo falhar, interrompa, restaure o componente anterior quando isso for seguro e reexecute o healthcheck. Não apague evidências durante o diagnóstico.

Checklist de aceite

Confirme nome e versão do software, portas públicas, permissões, volumes, espaço, logs, backup e caminho de recuperação. Registre o horário e o operador. Um checklist curto, repetível e ligado ao cenário é mais útil que uma promessa de disponibilidade sem método.

Perguntas relacionadas

Estas respostas condensam as dúvidas que normalmente aparecem antes do corte e apontam para a verificação que falta em cada uma.

Coolify na VPS funciona em uma VPS pequena?

Pode funcionar para um cenário enxuto, mas a decisão depende de RAM, CPU, armazenamento, concorrência e dependências. Comece com o plano VPS Brasil Performance e valide o fluxo real antes de ampliar.

Qual porta deve ficar pública?

Somente a porta necessária para o usuário ou túnel. Neste cenário, as portas relevantes são 80, 443 e a porta administrativa definida por você; componentes administrativos, bancos e filas devem ficar em loopback, VPN ou rede privada quando possível.

Como comprovar que a configuração funcionou?

Combine docker compose ps, logs e um teste de jornada. Registre status, versão, tempo, permissões e resultado. Um processo ativo isoladamente não comprova que a integração, os dados ou o rollback estão corretos.

Quando devo fazer upgrade?

Quando a medição mostrar pressão persistente, fila crescendo, OOM, I/O ou falta de margem para manutenção. Compare com o VPS Brasil Performance ou o VPS Brasil Ultra usando os recursos de catálogo, sem tratar preço como prova de desempenho.

Próximo passo

Se o seu cenário cabe no recorte deste artigo, o próximo passo é provisionar o VPS Brasil Performance (12 GB, 6 vCPUs, 150 GB NVMe, R$169/mês), executar o checklist em staging e registrar o resultado antes do corte. Conheça o VPS Brasil Performance e escolha a capacidade pelo uso observado.

Perguntas Frequentes

Pode funcionar para um cenário enxuto, mas a decisão depende de RAM, CPU, armazenamento, concorrência e dependências. Comece com o plano VPS Brasil Performance e valide o fluxo real antes de ampliar. Em produção, registre a versão, o ambiente, as permissões e a saída do teste; esse contexto é necessário para repetir o diagnóstico e decidir o próximo passo com segurança.

Somente a porta necessária para o usuário ou túnel. Neste cenário, as portas relevantes são 80, 443 e a porta administrativa definida por você; componentes administrativos, bancos e filas devem ficar em loopback, VPN ou rede privada quando possível. Em produção, registre a versão, o ambiente, as permissões e a saída do teste; esse contexto é necessário para repetir o diagnóstico e decidir o próximo passo com segurança.

Combine docker compose ps, logs e um teste de jornada. Registre status, versão, tempo, permissões e resultado. Um processo ativo isoladamente não comprova que a integração, os dados ou o rollback estão corretos. Em produção, registre a versão, o ambiente, as permissões e a saída do teste; esse contexto é necessário para repetir o diagnóstico e decidir o próximo passo com segurança.

Quando a medição mostrar pressão persistente, fila crescendo, OOM, I/O ou falta de margem para manutenção. Compare com o VPS Brasil Performance ou o VPS Brasil Ultra usando os recursos de catálogo, sem tratar preço como prova de desempenho. Em produção, registre a versão, o ambiente, as permissões e a saída do teste; esse contexto é necessário para repetir o diagnóstico e decidir o próximo passo com segurança.

Use os blocos como modelos. Substitua domínios, IPs, usuários, caminhos, tokens e nomes de volume; valide cada linha e faça backup antes de aplicar em produção. Registre a versão da ferramenta e o resultado de cada comando para que outra pessoa consiga revisar e repetir a alteração com segurança.

Não. O conteúdo oferece um procedimento reproduzível e usa especificações de catálogo quando necessário. Latência, throughput, uso de memória e taxa de entrega devem ser medidos no ambiente que receberá a carga. Guarde a configuração, o horário, o tamanho dos dados e as condições do teste antes de comparar resultados.

Registre data, versão, plano, configuração, comandos, saída relevante, origem do teste, falhas, correção e critério de aceite. Isso permite repetir o diagnóstico sem depender de memória. Inclua também portas, permissões, volumes, logs consultados e o nome da última cópia recuperável.

Pare a mudança, preserve logs e restaure o último estado conhecido quando o retorno for seguro. Para dados, use a cópia ou o dump testado; para configuração, mantenha a versão anterior e um acesso de recuperação. Depois, registre a causa provável e repita em staging antes de tentar novamente.

Comentários (4)

4.2
4 avaliações
Felipe Martins - Dev Team

Implementei essas configurações no VPS da minha empresa e reduziu nosso custo com cloud em 40%. O artigo está muito bem explicado, parabéns!

Fernanda Fernandes

Excelente artigo! Como sysadmin, confirmo que essas configurações realmente fazem diferença. Só gostaria de adicionar que o ajuste do swappiness também ajuda muito no uso de memória. Tem algum repositório GitHub de referência com esse setup?

Rodrigo Oliveira

A latência para o Brasil ficou excelente depois que migramos para a VPS local. O tutorial de configuração de rede e MTU foi direto ao ponto. Tem algum repositório GitHub de referência com esse setup?

Bruno Barbosa

Muito bom o passo a passo de particionamento e disco NVMe. O throughput do I/O subiu consideravelmente nos nossos testes de benchmark.