Navegue por tópicos
Para instalar Coolify em VPS, use um servidor novo, confirme SSH e compatibilidade, rode o instalador oficial e só então conecte DNS, domínio e seu primeiro Compose. O painel reduz etapas repetitivas de deploy, mas não administra DNS, segredos, backup ou recuperação por você. Siga este roteiro e valide cada camada antes de expor uma aplicação.
Este é um tutorial baseado na documentação oficial vigente do Coolify. O Runzos não executou esta instalação nem um restore para este artigo. Por isso, os passos abaixo indicam o caminho documentado e os pontos que você deve validar no seu ambiente.
A tese deste guia é Painel não é Operação. Isso significa que uma interface visual diminui o atrito de deploy. Ela não substitui quem cuida de segurança, atualizações, DNS e recuperação.
O que o Coolify resolve e o que continua sendo seu
💡 Vai rodar n8n numa VPS? A gente comparou o preço real em cada provedor — com renovação e requisitos — em VPS para n8n.
Coolify é um PaaS open source e self-hosted. Ele gerencia servidores, aplicações e bancos por SSH, usando Docker, Docker Compose, DNS, Let’s Encrypt e armazenamento S3 compatível. O repositório oficial do Coolify também descreve aplicações, bancos e mais de 280 serviços one-click.
| Camada | O que o Coolify organiza | O que continua sua responsabilidade |
|---|---|---|
| Servidor | Instala componentes pelo instalador oficial. | Escolher uma VPS compatível, manter SSH e evitar conflitos no host. |
| Deploy | Publicação de apps e pilhas Compose. | Manter repositório, variáveis, volumes e configuração da aplicação. |
| Domínio e HTTPS | Proxy e solicitação de certificado ao cadastrar um FQDN HTTPS. | Apontar DNS público e investigar falhas de validação. |
| Banco | Recursos de banco e backups documentados para alguns motores. | Definir acesso, retenção e teste de restauração. |
| Backup | Backup da instância do painel em S3 compatível ou manualmente. | Salvar dados persistentes, uploads e volumes da aplicação. |
Essa distinção evita a promessa errada de “DevOps zero”. O painel centraliza deploy. A VPS continua tendo sistema operacional, acesso, armazenamento e serviços que podem falhar.
Passo 1: prepare uma VPS nova e o acesso SSH
A documentação de instalação do Coolify recomenda servidor novo. O instalador altera o host: prepara ferramentas, Docker Engine 24 ou superior, diretórios em /data/coolify, chaves SSH e os componentes do painel.
O mínimo oficial é 2 cores, 2 GB de RAM e 30 GB livres. Esse número atende ao painel, não garante folga para painel, aplicação e banco no mesmo host. Como margem editorial para um app simples com banco pequeno, comece com 2 vCPU, 4 GB de RAM e 50 GB NVMe. Suba recursos antes de juntar workers, Redis, mais bancos ou vários apps.
Antes de continuar, confirme:
- A VPS é nova ou não contém serviços que disputarão portas, Docker ou diretórios.
- Você tem SSH administrativo. A documentação recomenda acesso root para a instalação.
- Se usar Ubuntu, a imagem é LTS 20.04, 22.04 ou 24.04. Docker instalado via Snap não é suportado pelo caminho automático.
- Você separou um domínio ou subdomínio para o painel.
- APP_KEY, chaves SSH e senhas ficarão fora de repositórios, prints e mensagens.
- Já existe um destino externo para backups.
Uma VPS com atendimento local pode reduzir o atrito de compra e suporte. Não muda a responsabilidade operacional. A VPS brasileira da Servla para n8n é uma rota possível. A pesquisa interna registra Coolify pré-instalado no plano de automação e configuração a partir de 2 vCPU, 4 GB e 30 GB NVMe. Confirme preço, renovação, backup e escopo de suporte no checkout.
Passo 2: instale pelo comando oficial atual
Conecte-se à VPS por SSH. Abra primeiro a página oficial de instalação do Coolify e confira se a distribuição e os pré-requisitos continuam iguais. A página oficial consultada para este guia indica o comando abaixo para o instalador automático:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Execute-o somente no servidor preparado no passo anterior. Não copie scripts de tutoriais antigos e não adapte o comando para um host já ocupado. O próprio instalador é o caminho canônico para instalar Docker e os componentes necessários.
Quando ele terminar, abra o endereço indicado pelo instalador e crie a conta inicial do painel. Não publique captura contendo IP, e-mail de acesso, token, APP_KEY ou chaves SSH. Use uma senha exclusiva.
A primeira decisão de segurança é simples: o painel precisa estar acessível para administração. PostgreSQL, MySQL, Redis e outros serviços internos não precisam ser públicos só porque estão na mesma VPS.
Passo 3: conecte DNS, FQDN e SSL nessa ordem
- No seu provedor de DNS, crie um registro A para o IP público da VPS.
- Espere o nome resolver para esse IP.
- No recurso correto dentro do Coolify, cadastre o FQDN completo usando
https://. - Aguarde o proxy receber a requisição e solicitar o certificado.
- Abra a URL em uma janela normal do navegador antes de anunciar a aplicação.
Segundo a documentação de domínios do Coolify, informar o domínio com https:// configura o proxy e solicita um certificado Let’s Encrypt. O certificado tem validade de 90 dias e a renovação é gerenciada pelo Coolify.
Isso não corrige DNS incorreto, firewall bloqueado ou aplicação indisponível. Se aparecer certificado self-signed, pare: confira DNS, FQDN, proxy e conectividade antes de seguir para produção.
Passo 4: publique o primeiro Compose sem expor o banco
No Coolify, crie uma nova aplicação do tipo Docker Compose. A documentação de Compose do Coolify define o arquivo como fonte de verdade para variáveis, storage e configuração.
O exemplo abaixo monta uma aplicação WordPress e MariaDB. Ele não contém credenciais reais. Crie os valores de WP_DB_* como variáveis secretas no Coolify ou no mecanismo de variáveis do seu deploy. Não faça commit delas.
services:
app:
image: wordpress:6-apache
restart: unless-stopped
expose:
- "80"
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_NAME: ${WP_DB_NAME}
WORDPRESS_DB_USER: ${WP_DB_USER}
WORDPRESS_DB_PASSWORD: ${WP_DB_PASSWORD}
volumes:
- wordpress_data:/var/www/html
db:
image: mariadb:11
restart: unless-stopped
environment:
MYSQL_DATABASE: ${WP_DB_NAME}
MYSQL_USER: ${WP_DB_USER}
MYSQL_PASSWORD: ${WP_DB_PASSWORD}
MYSQL_ROOT_PASSWORD: ${WP_DB_ROOT_PASSWORD}
volumes:
- mariadb_data:/var/lib/mysql
volumes:
wordpress_data:
mariadb_data:
O ponto de segurança está no que não existe: não há ports: no serviço db. Não atribua domínio ao banco. Assim, a aplicação conversa com db:3306 pela rede privada da pilha, enquanto o domínio público fica apenas no serviço app.
Portas mapeadas no host podem expor serviços fora do proxy. A documentação oficial explica que serviços sem domínio e sem porta mapeada continuam privados na rede da pilha. Isso é o comportamento desejado para banco e cache usados apenas pela aplicação.

Agora siga esta sequência no painel:
- Cole ou conecte o Compose no recurso de aplicação.
- Cadastre as variáveis
WP_DB_NAME,WP_DB_USER,WP_DB_PASSWORDeWP_DB_ROOT_PASSWORDcomo segredos fora do repositório. - Aponte o FQDN HTTPS apenas para
app, na porta 80 do contêiner. - Faça o deploy.
- Abra o domínio público e conclua a tela inicial do WordPress.
- Confirme nos detalhes do recurso que o banco não recebeu domínio nem porta publicada.
Antes de chamar o deploy de pronto, confirme: domínio abre o app esperado, HTTPS está válido, logs não exibem segredos, volumes persistentes foram identificados e o healthcheck escolhido faz sentido para a aplicação.
Passo 5: configure backup em duas camadas
O conceito Painel não é Operação aparece com mais força no backup. O backup da instância Coolify pode ser manual ou em armazenamento S3 compatível. Ele não inclui dados da aplicação em volume mounts.
| Camada | O que preservar | Validação necessária |
|---|---|---|
| Instância Coolify | Backup do painel, APP_KEY e chaves SSH. | Restaurar o painel em ambiente controlado. |
| Banco de dados | Dump e cópia externa com retenção definida. | Restaurar e consultar dados de teste. |
| Uploads e volumes | Cópia externa própria para arquivos persistentes. | Recuperar um arquivo e abrir a aplicação. |
O procedimento oficial de backup e restauração deixa essa separação explícita. Para recuperar o painel em outro host, preserve backup, APP_KEY e as chaves SSH antigas. Para recuperar a aplicação, preserve também banco, uploads e volumes.

Para PostgreSQL, MySQL, MariaDB e MongoDB, o Coolify documenta backups agendados com cron e integração S3. Consulte os backups agendados de bancos e defina frequência, retenção e destino. Um botão de backup confirma que a cópia foi solicitada. Só um restore testado confirma que a rotina funciona.
Passo 6: valide antes de colocar em produção
Use este checklist após o primeiro deploy e depois de atualizações relevantes:
- O painel e a aplicação usam domínios conhecidos e HTTPS válido.
- DNS resolve para a VPS certa.
- Apenas o serviço web recebe domínio público.
- Banco, Redis e serviços internos não expõem porta no host sem necessidade.
- Segredos não estão no Compose versionado, logs ou screenshots.
- Volumes, uploads e bancos persistentes foram identificados.
- Backup da instância e backup dos dados têm destino externo.
- APP_KEY e chaves SSH estão guardadas em local seguro.
- Um restore foi testado em ambiente descartável.
- Após uma atualização, aplicação, banco, jobs e domínio foram verificados.
Uma VPS única continua sendo ponto único de falha. Se o projeto exige alta disponibilidade, SLA, RPO/RTO formal ou alguém para responder incidentes, SaaS ou um serviço gerenciado pode ser operacionalmente mais barato.
Quando usar VPS própria, VPS com suporte ou gerenciado
| Rota | Controle | Trabalho operacional | Melhor cenário |
|---|---|---|---|
| VPS própria | Alto. | Alto. | Quem mantém SSH, DNS, backups e incidentes. |
| VPS com painel ou template | Alto no servidor. | Menor atrito inicial, mas ainda existe. | Solo builder que aceita operar e quer começar mais rápido. |
| SaaS ou gerenciado | Menor controle do host. | Menor nas tarefas cobertas pelo serviço. | Quem não pode assumir restore, atualização e resposta a incidentes. |
Para comparar alternativas comerciais, veja a VPS da Hostinger para n8n e a oferta da Turbo Cloud. Escolha pela capacidade, suporte e operação que você consegue sustentar. Um painel não elimina administração.

FAQ sobre Coolify em VPS
Qual VPS preciso para instalar Coolify?
O mínimo oficial é 2 cores, 2 GB de RAM e 30 GB livres. Isso não representa a capacidade de uma aplicação de produção completa com banco. Para painel, app simples e banco pequeno, 2 vCPU, 4 GB de RAM e 50 GB NVMe é uma margem editorial mais segura.
Posso instalar Coolify em um servidor com aplicações?
A documentação recomenda um servidor novo. O instalador prepara Docker, diretórios em /data/coolify, chaves SSH e componentes do painel. Em host ocupado, portas, Docker e recursos podem conflitar.
Como ativo HTTPS?
Primeiro, aponte um registro DNS A para o IP público da VPS. Depois, informe o FQDN com https:// no Coolify. O produto configura o proxy e solicita o certificado. Se surgir certificado self-signed, investigue DNS e proxy antes de publicar.
O backup do Coolify salva os dados da aplicação?
Não. O backup da instância não inclui dados em volumes. Banco, uploads e volumes precisam de rotina própria. Preserve também APP_KEY e chaves SSH para recuperar o painel em outro host.
Coolify substitui Docker Compose?
Não. Em deploys Compose, o arquivo permanece como fonte de verdade para variáveis, storage e configuração. O Coolify organiza deploy e proxy. A segurança depende de não publicar portas de banco desnecessariamente e de guardar segredos fora do repositório.
Conclusão: escolha a operação que você consegue restaurar
Coolify é uma camada útil para publicar aplicações Docker em VPS com menos atrito. Ele não muda a responsabilidade por servidor, domínio, segredos, backups e recuperação.
A pergunta madura não é se o dashboard abriu. É se você consegue restaurar painel, banco, arquivos e acesso em outro host. Se a resposta for não, comece menor, documente o processo ou escolha uma rota gerenciada.
Para avaliar uma VPS brasileira com essa proposta, veja a oferta da Servla para VPS e n8n. Confirme plano, suporte, renovação e escopo de backup antes de contratar.














