Implantação
Docker Compose (Recomendado)
Seção intitulada “Docker Compose (Recomendado)”O projeto gerado inclui um Dockerfile e docker-compose.yml. Esta é a maneira mais simples de implantar:
services: postgres: image: postgres:16-alpine environment: POSTGRES_USER: rebase POSTGRES_PASSWORD: rebase POSTGRES_DB: rebase volumes: - pgdata:/var/lib/postgresql/data ports: - "5432:5432"
app: build: ./backend ports: - "3001:3001" environment: DATABASE_URL: postgresql://rebase:rebase@postgres:5432/rebase JWT_SECRET: ${JWT_SECRET} NODE_ENV: production depends_on: - postgres volumes: - uploads:/app/uploads
volumes: pgdata: uploads:docker compose up -dLista de Verificação de Produção
Seção intitulada “Lista de Verificação de Produção”Antes de implantar em produção, certifique-se:
| Item | Detalhes |
|---|---|
| JWT_SECRET | Use uma string aleatória criptograficamente forte (≥ 32 caracteres). Nunca reutilize entre ambientes. |
| DATABASE_URL | Use uma instância Postgres gerenciada (Neon, Supabase, RDS) com TLS ativado |
| CORS | Configure as origens permitidas no seu backend se o frontend e o backend estiverem em domínios diferentes |
| Volumes de armazenamento | Monte volumes persistentes para uploads de arquivos. Ou mude para S3 para produção. |
| HTTPS | Termine o TLS no seu proxy reverso (nginx, Cloudflare, balanceador de carga) |
| Registro | Defina ALLOW_REGISTRATION=false após criar sua conta de administrador |
Servindo o Frontend
Seção intitulada “Servindo o Frontend”Em produção, o backend pode servir o frontend como uma SPA estática:
import { serveSPA } from "@rebasepro/server-core";
// After initializeRebaseBackend()import path from "path";
// After initializeRebaseBackend()serveSPA(app, { frontendPath: path.resolve(process.cwd(), "../frontend/dist") });Primeiro, construa o frontend:
cd frontend && pnpm buildDessa forma, você só precisa implantar um servidor que lida com SPA e API.
Plataformas de Nuvem
Seção intitulada “Plataformas de Nuvem”Railway / Render / Fly.io
Seção intitulada “Railway / Render / Fly.io”- Envie seu código para um repositório Git
- Conecte o repositório à sua plataforma de nuvem
- Defina as variáveis de ambiente (
DATABASE_URL,JWT_SECRET, etc.) - O
Dockerfileincluído será detectado automaticamente
Google Cloud Run
Seção intitulada “Google Cloud Run”# Build the containerdocker build -t gcr.io/YOUR_PROJECT/rebase-backend ./backend
# Push to Container Registrydocker push gcr.io/YOUR_PROJECT/rebase-backend
# Deploygcloud run deploy rebase-backend \ --image gcr.io/YOUR_PROJECT/rebase-backend \ --set-env-vars DATABASE_URL=...,JWT_SECRET=... \ --allow-unauthenticatedAlterando a URL Base
Seção intitulada “Alterando a URL Base”Se você quiser que o Rebase seja executado em um subcaminho (por exemplo, /admin):
Frontend — Atualize o basename do BrowserRouter:
<BrowserRouter basename="/admin"> <App /></BrowserRouter>Backend — Atualize o caminho base:
await initializeRebaseBackend({ // ... basePath: "/admin/api"});Próximos Passos
Seção intitulada “Próximos Passos”- Visão Geral do Backend — Configuração completa do backend
- Configuração de Armazenamento — Configuração S3 para produção