Foi um encontro longo (quase três horas) e recheado, com o Danilo Sampaio e o Virgo (Lucas Souza) dividindo a tela: um explicando o "porquê" de cada passo enquanto o outro digitava ao vivo, com direito a chave SSH errada, queda de conexão e a plateia ativa mandando pergunta o tempo todo no chat.
Destaques
- Criação de conta Oracle Cloud e diferença entre o cadastro inicial e o "upgrade de conta" (que cobra e estorna 500 reais só para validar o cartão, sem sair do Always Free).
- Provisionamento de uma instância Compute (Ubuntu 24.04, shape
VM.Standard.E2.Micro, 1 CPU / 1GB grátis) e de um DB System MySQL Always Free, incluindo a criação da VCN, subnet e regras de Security List (ingress na porta 22, depois 80 e 443). - Deploy manual do zero: instalação do PHP 8.4 + FPM via repositório Ondřej, dependências exigidas pela documentação do Laravel, Nginx, Composer (nunca com
sudo, para não quebrar o permissionamento), Node via NVM, e ajuste de permissões da pasta/var/wwwcomchownechmod 2775para o grupowww-data. - Configuração do Nginx copiando o template oficial da documentação do Laravel e ajustando o
root, a versão do PHP-FPM e oserver_name— com o alerta de que 502 Bad Gateway quase sempre é PHP-FPM mal configurado. - Liberação de portas via IPTables (peculiaridade da Oracle, diferente do UFW usado em outras clouds), IP público reservado (para não perder o apontamento de DNS a cada restart) e SSL com Certbot/Let's Encrypt.
- Supervisor para manter os workers de fila rodando (
php artisan queue:work) e cron apontando paraartisan schedule:runa cada minuto. - Segunda rodada com Docker: Dockerfile multi-stage a partir de uma imagem PHP oficial, pensado para funcionar também em Kubernetes (sem volume da aplicação inteira, só de
storageebootstrap/cache), orquestrado comdocker compose, e Nginx como proxy reverso na frente do container — com o cuidado extra de configurarTrustProxiesno Laravel para não perder o IP de origem da requisição.
Profundidade técnica
A aula não ficou no copia-e-cola: em cada etapa (Nginx, IPTables, Dockerfile) o Danilo insistiu para que os alunos entendessem linha a linha o que estava sendo configurado, inclusive sugerindo usar uma IA para explicar arquivos de configuração desconhecidos. Entraram detalhes que só aparecem na prática, como a diferença entre instalar Composer com ou sem sudo, o motivo real de um 502 Bad Gateway, o cuidado com ARM (Ampere) versus AMD ao usar imagens Docker, e a diferença entre proxy reverso e web server explicada didaticamente. Também rolou uma conversa mais avançada sobre trade-offs de arquitetura para quem quiser evoluir esse deploy para Kubernetes ou GitHub Actions no futuro.
Faça parte do Clã
Se você quer ir além do workshop gratuito — ter acesso às gravações de todos os workshops anteriores, aos encontros técnicos semanais ao vivo, e à mentoria próxima com o Danilo, o Virgo e o Herbert — o caminho é entrar no Clã Beer and Code. É lá que esse tipo de conteúdo técnico de verdade, sem enrolação e direto da vivência de quem trabalha com Laravel no dia a dia, continua acontecendo toda semana.
AI Engineering has become a profession, and you learn it by building, not by watching. The Clã Beer and Code is where that happens live, every week: RAG, agents, observability and LLMOps in real projects, next to people already in production. It is paid, it is a subscription, and it is exactly the environment these sessions give you a taste of.
Join the Clã