Voltar ao início
Guia de Instalação

Instalar Membresia 360 em uma VPS

Passo a passo completo para rodar o app em um servidor próprio (Ubuntu 22.04), com Node.js, Nginx, SSL gratuito e domínio personalizado.

Servidor com nuvem — VPS
Atualizando a VPS depois de mexer no Lovable

Toda vez que você fizer mudanças no Lovable (e sincronizar com o GitHub), rode este bloco na VPS para refletir as novidades. Leva ~1 minuto.

cd /var/www/membresia360
git pull
npm install
NITRO_PRESET=node-server npm run build
pm2 restart membresia360
Ver passo detalhado ↓

Dica: se algo falhar, veja os logs com pm2 logs membresia360 --lines 100.

Instalação automática (1 clique)

Prefere pular o passo a passo? Rode o script abaixo na sua VPS Ubuntu recém-criada (como root). Ele instala Node.js, Bun, Nginx, PM2, faz build, sobe o app e (opcional) emite SSL grátis.

curl -fsSL https://igreja-conectada-360.lovable.app/install-membresia360.sh -o install.sh
sudo bash install.sh

Modo não interativo (informe repositório, domínio e e-mail):

sudo REPO_URL="https://github.com/usuario/repo.git" \
     DOMAIN="app.suaigreja.com.br" \
     EMAIL="admin@suaigreja.com.br" \
     bash install.sh
Baixar install.sh
Deploy automático (GitHub Actions)

O workflow .github/workflows/deploy-vps.yml já está incluso no projeto. Toda vez que você fizer push no branch main (o Lovable já faz isso quando você sincroniza com o GitHub), o GitHub Actions conecta na sua VPS via SSH e roda git pull, build e pm2 restart sozinho.

1. Gere uma chave SSH só para o deploy (na sua VPS)

ssh-keygen -t ed25519 -C "github-actions-deploy" -f ~/.ssh/gh_deploy -N ""
cat ~/.ssh/gh_deploy.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys
cat ~/.ssh/gh_deploy   # copie TUDO — é a chave PRIVADA que vai no GitHub

2. Adicione os secrets no GitHub

No repositório: Settings → Secrets and variables → Actions → New repository secret. Crie um por vez:

SecretValor
VPS_HOSTIP da VPS (ex.: 91.98.120.163)
VPS_USERroot (ou o usuário sudo)
VPS_PORTPorta SSH (padrão 22). Opcional.
VPS_SSH_KEYConteúdo do arquivo ~/.ssh/gh_deploy (privada, inclui BEGIN/END)
VPS_APP_PATHCaminho do projeto (ex.: /var/www/membresia360)
PM2_APP_NAMENome do processo PM2 (ex.: membresia360)

3. Teste

Faça qualquer push em main (ou clique em Actions → Deploy to VPS → Run workflow). Acompanhe o log em tempo real na aba Actions do GitHub. Se der verde, sua VPS já está com a versão nova.

Boas práticas de segurança:
  • Use uma chave SSH exclusiva para o deploy — não reaproveite a sua pessoal.
  • Nunca cole a chave privada no chat ou em commits.
  • Se quiser restringir mais: crie um usuário deploy na VPS com sudo limitado só para pm2.
Abrir Actions no GitHub ↗
Checklist de instalação
0/17

Marque cada comando conforme executa na VPS. Cole o output ou anexe um print como evidência. Tudo fica salvo no seu navegador.

1

Conectar na VPS via SSH

Confirme o login (yes) e digite a senha root do provedor.

2

Atualizar o sistema

Pode demorar alguns minutos. Aceite as opções padrão.

3

Liberar a porta 80 (parar LiteSpeed, se existir)

Só execute se aparecer erro 'bind() to 0.0.0.0:80 failed'.

4

Instalar Node.js 20

5

Instalar PM2 (gerenciador de processos)

6

Instalar Nginx

7

Confirmar Nginx escutando na porta 80

Deve mostrar 0.0.0.0:80 LISTEN nginx.

8

Clonar o repositório (com token PAT)

9

Criar arquivo .env com chaves do Supabase

Cole VITE_SUPABASE_URL, VITE_SUPABASE_PUBLISHABLE_KEY e demais variáveis.

10

Instalar dependências

11

Build de produção (preset node-server)

Sem o preset o app não sobe em Node — dá 500 no Nginx.

12

Subir o app com PM2 na porta 3000

13

Configurar Nginx como proxy reverso para :3000

proxy_pass http://127.0.0.1:3000; dentro do bloco location /.

14

Abrir http://SEU_IP no navegador

A landing do Membresia 360 deve carregar.

15

Apontar DNS (registro A) para o IP da VPS

No painel do domínio: A @ SEU_IP e A www SEU_IP.

16

Emitir SSL grátis com Certbot

17

Fluxo de atualização (novas versões)

Console remoto da VPS

Executa comandos autorizados diretamente na VPS onde o Membresia 360 está rodando. Requer que o servidor tenha a variável VPS_EXEC_TOKEN definida no .env. Só funciona quando esta página é acessada pelo domínio da VPS (não pelo preview do Lovable).

Clique em um botão acima para ver a saída aqui.

Requisitos mínimos
  • VPS com Ubuntu 22.04 LTS — mínimo 1 vCPU, 2 GB de RAM, 20 GB SSD
  • Acesso SSH (usuário root ou sudo)
  • Domínio próprio (ex.: minhaigreja.com.br)
  • Conta no Supabase com projeto criado e banco de dados configurado
  • Arquivo schema.sql do projeto aplicado no Supabase

© 2026 Membresia 360 — Guia de Instalação em VPS

Desenvolvido por Apache.dev — suporte (69) 99246-7599