Skip to content

O SetupForcoder é um auto-instalador 100% gratuito e open-source, criado para simplificar o deploy de aplicações modernas em uma VPS Ubuntu. Com ele, você pode rodar múltiplos projetos Laravel em containers Docker, todos atrás de um Traefik com certificados SSL automáticos. Desenvolvido pela comunidade Forcoder. Se utilizar, dê os créditos! 🚀

License

Notifications You must be signed in to change notification settings

BrunoHoinacki/setup-forcoder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 SetupForcoder — Infraestrutura Multi-Cliente com Traefik + Docker

License: MIT Ubuntu Debian Docker Laravel Traefik Cloudflare PRs Welcome


Este repositório monta uma infraestrutura multi-cliente em uma VPS usando Docker e Traefik como proxy reverso com SSL automático (Let’s Encrypt). Cada cliente tem seu próprio domínio e uma stack isolada (ex.: Laravel + PHP-FPM + Nginx). Opcionalmente, os projetos podem usar um MySQL central com phpMyAdmin.

DNS → VPS (80/443) → Traefik → Nginx do projeto → PHP-FPM do projeto → (opcional) MySQL central

📖 Veja um exemplo em funcionamento (SQLite).


🌍 Compatibilidade & Filosofia

O SetupForcoder foi pensado para atender tanto projetos legados quanto arquiteturas modernas:

  • Legado (LAMP-like) → Projetos ainda em /home/<cliente>/<projeto>/src, com dumps SQL diretos e assets em /storage/public/.
  • Moderno (Laravel em containers) → Provisionamento via Docker Compose, stack isolada, Nginx + PHP-FPM, MySQL central opcional, Traefik com SSL automático.

Essa compatibilidade garante que empresas em transição possam adotar o SetupForcoder sem quebrar fluxos já existentes.


⚡ Instalação em 1 comando

Na sua VPS Ubuntu/Debian (como root):

curl -fsSL https://raw.githubusercontent.com/BrunoHoinacki/setup-forcoder/main/scripts/install.sh | sudo bash

Isso irá baixar o toolbox e iniciar o menu interativo para provisionar toda a infra.

📖 Guia detalhado: docs/setup.md


⚙️ Principais opções do toolbox

  1. Setup inicial da VPS (Traefik + redes + opcional MySQL/PMA)
  2. Provisionar cliente/projeto (docs/mkclient.md)
  3. Remover projeto (delclient.sh)
  4. Remover TODOS os projetos (delallclients.sh)
  5. Utilitários Docker do projeto (generaldocker.sh)
  6. Utilitários Git do projeto
  7. Backup do projeto (mkbackup.sh)
  8. Recriar/sobe Traefik (docker compose up -d em /opt/traefik)
  9. Logs do Traefik (tail -f /opt/traefik/logs/access.json)

🔶 Cloudflare (opcional)

O setup suporta Cloudflare:

  • Com API Token → usa DNS-01 (pode manter proxy laranja ligado).
  • Sem token (HTTP-01) → deixe o DNS cinza (DNS only) até emitir o certificado.

📖 Como criar o token: docs/token_cloudflare.md


🛡️ Checklist de Segurança

Após provisionar a infra ou um novo projeto, valide rede, SSH e containers expostos.

📖 Guia completo: docs/security_verify.md


📦 Scripts inclusos

  • scripts/setup.sh — Setup inicial da VPS (docs/setup.md)
  • scripts/mkclient.sh — Provisionamento de projetos (docs/mkclient.md)
  • scripts/delclient.sh — Remove um projeto
  • scripts/delallclients.sh — Remove todos os projetos
  • scripts/generaldocker.sh — Utilitários Docker/Compose
  • scripts/generalgit.sh — Utilitários Git
  • scripts/mkbackup.sh — Backup de projetos (ZIP + dump SQL)
  • scripts/mkrbackup.sh — Mantém dumps disponíveis para rsync incremental
  • scripts/resetsetup.sh — Reset da infra base

🗺️ Roadmap

  • Templates de queue/cron (Horizon/Supervisord)
  • Rate limit & security headers padrão por serviço
  • Backups automáticos (auto_backup.sh + setup-cron-backups.sh)
  • Script complementar de rsync → para rodar em máquina local/servidor externo, sincronizando apenas alterações a partir de /opt/rbackup.
  • Logs centralizados (Loki/Promtail + Grafana)
  • Redis / Meilisearch opcionais

📖 Documentação complementar


📜 Licença

Distribuído sob a MIT License. Veja o arquivo LICENSE.txt.


About

O SetupForcoder é um auto-instalador 100% gratuito e open-source, criado para simplificar o deploy de aplicações modernas em uma VPS Ubuntu. Com ele, você pode rodar múltiplos projetos Laravel em containers Docker, todos atrás de um Traefik com certificados SSL automáticos. Desenvolvido pela comunidade Forcoder. Se utilizar, dê os créditos! 🚀

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages