Skip to main content

Por que VPS + Coolify?

  • Custo fixo — sem surpresas por volume de execuções
  • Múltiplos projetos no mesmo servidor
  • Coolify oferece interface de deploy similar ao Vercel, mas auto-hospedada
  • Recomendado para quem já tem ou planeja contratar um VPS

Requisitos de Servidor

Recomendado para rodar AssessIQ bem:
RecursoMínimoRecomendado
CPU2 vCPU4 vCPU
RAM4 GB8–16 GB
Disco20 GB SSD40 GB SSD
OSUbuntu 22.04+Ubuntu 24.04 LTS

Instalar o Coolify

# Via script oficial
curl -fsSL https://get.coolify.io | bash
Após a instalação, acesse o painel em http://SEU-IP:8000.

Configurar o Projeto no Coolify

1

Adicionar Source

No painel do Coolify, vá em Sources → Add e conecte sua conta GitHub.
2

Criar novo serviço

Clique em New Resource → Application e selecione o repositório plataforma-testes.
3

Configurar build

  • Build Pack: Nixpacks ou Docker (Coolify detecta Next.js automaticamente)
  • Build Command: pnpm install && pnpm build
  • Start Command: pnpm start
  • Porta: 3000
4

Adicionar variáveis de ambiente

Na aba Environment Variables, adicione todas as variáveis do guia.
DATABASE_URL=postgresql://...
AUTH_SECRET=...
NEXTAUTH_URL=https://seudominio.com
...
5

Configurar domínio e SSL

Na aba Domains, adicione seu domínio. O Coolify provisiona o SSL via Let’s Encrypt automaticamente usando Traefik como proxy reverso.
6

Deploy

Clique em Deploy. O Coolify clona o repositório, instala dependências, builda e inicia o container.

Deploy Automático (Webhooks)

Configure o webhook do Coolify no seu repositório GitHub:
  1. No Coolify, copie o Webhook URL do projeto
  2. No GitHub → Settings → Webhooks → Add webhook
  3. Cole o URL e selecione o evento push
A partir daí, todo push para a branch configurada disparará um novo deploy automaticamente.

Executar Migrations no VPS

No terminal do servidor ou via SSH:
# Dentro do container ou no servidor
cd /path/do/projeto
DATABASE_URL="postgresql://..." pnpm prisma migrate deploy
Ou configure um Job no Coolify para rodar o comando de migration antes do deploy.

Dockerfile (Opcional)

Se preferir usar Docker diretamente sem o Coolify:
FROM node:20-alpine AS builder
WORKDIR /app
COPY . .
RUN npm install -g pnpm && pnpm install && pnpm build

FROM node:20-alpine AS runner
WORKDIR /app
COPY --from=builder /app/.next ./.next
COPY --from=builder /app/public ./public
COPY --from=builder /app/package.json ./
COPY --from=builder /app/node_modules ./node_modules
EXPOSE 3000
CMD ["pnpm", "start"]
docker build -t assessiq .
docker run -p 3000:3000 --env-file .env.local assessiq