Skip to content
Latchkey

O Que é o Heroku? O PaaS Original para Desenvolvedores

Heroku é uma plataforma como serviço que executa sua aplicação em contêineres gerenciados chamados dynos, fazendo deploy a partir de um simples git push sem que você precise gerenciar servidores.

O Heroku popularizou a experiência moderna de PaaS para desenvolvedores: envie seu código e ele roda, sem servidores para configurar. Ele detecta sua linguagem com buildpacks, cria um release e o executa em contêineres leves chamados dynos. Add-ons fornecem bancos de dados e outros serviços. Ele continua sendo uma referência para deploys amigáveis a desenvolvedores.

Dynos e buildpacks

Um dyno é um contêiner leve que executa o processo do seu app. Buildpacks detectam sua linguagem e montam um slug executável a partir do seu código-fonte. Você escala alterando o número e o tamanho dos dynos, sem servidores subjacentes para gerenciar.

O workflow do git push

Classicamente você faz deploy com git push heroku main: o Heroku recebe o código, executa o buildpack, cria um release e inicia os dynos. O Procfile declara quais processos (web, worker) executar. É quase tão simples quanto um deploy pode ser.

Add-ons e configuração

  • Add-ons gerenciados para bancos de dados, caches e logging.
  • Config vars para configuração baseada em ambiente.
  • Release phases para migrações antes de um novo release entrar no ar.

Onde o Heroku se encaixa hoje

O Heroku é excelente para protótipos, times pequenos e apps que valorizam a simplicidade em vez do controle refinado. Para escala muito grande ou necessidades específicas de infraestrutura, os times frequentemente migram para cloud puro ou Kubernetes, mas a DX do Heroku ainda influencia plataformas mais novas.

Papel no CI/CD

Além do git push simples, pipelines fazem deploy no Heroku via CLI, container registry ou a API do Heroku, geralmente após rodar testes no GitHub Actions. Review apps criam um app temporário por pull request, e pipelines promovem um build de staging até produção.

Principais conclusões

  • Heroku é um PaaS que executa apps em dynos, fazendo deploy a partir de um git push.
  • Buildpacks detectam a linguagem e add-ons fornecem bancos de dados e serviços.
  • Pipelines fazem deploy via CLI ou container registry, geralmente após os testes de CI.

Guias relacionados