Olha, vou te contar minha saga com o tal do Alpine e FFmpeg. Não é moleza não.

Eu inventei de usar Alpine nuns containers Docker pra um projeto pessoal. A ideia era deixar tudo bem leve, consumir pouca memória, aquela coisa toda que falam do Alpine. Precisava rodar uns comandos do FFmpeg pra converter uns vídeos, coisa básica até. Pensei: “Ah, beleza, instalo o FFmpeg lá dentro e pronto”. Ledo engano, meu amigo.
A Realidade da Coisa
Começou a batalha. Primeiro, o pacote padrão do FFmpeg no repositório do Alpine era meio capado, faltava um monte de codec que eu precisava. Aí fui tentar compilar o FFmpeg direto no container. Nossa senhora! Faltava biblioteca que não acabava mais. Era instalar uma dependência, aí essa dependência precisava de outra, que por sua vez… você sabe como é. Parecia que eu tava construindo o negócio do zero.
- Instala o `build-base` (o compilador e ferramentas básicas).
- Caça nome de biblioteca esquisito tipo `lame-dev`, `x264-dev`, `fdk-aac-dev`.
- Algumas não tinham no repositório oficial, tinha que habilitar o `community` ou `edge`.
- Aí compilava por horas pra no final dar um erro críptico numa biblioteca obscura.
Gastei um tempo absurdo nisso. Aquela leveza do Alpine começou a pesar nas minhas costas, sabe? O container era pequeno, mas o trabalho pra fazer uma ferramenta essencial como o FFmpeg rodar completinha foi gigante.
Mas Por Que Eu Tava Fazendo Isso?
Agora você pergunta: “Pô, mas por que se dar todo esse trabalho?”. Pois é. Isso me lembrou uma época num emprego antigo, uma startup quebrada que eu trabalhei logo que saí da faculdade.
A gente tinha uns servidores que eram uma lástima, tudo contado. E precisávamos processar uns vídeos curtos que o pessoal mandava por um aplicativo lá. Coisa simples: redimensionar, talvez botar uma marca d’água. Mas não podia usar muito recurso. O “arquiteto” da época, que manjava tanto quanto eu de cortar grama, teve a brilhante ideia: “Vamos usar Alpine! É pequeno, é rápido, vai ser ótimo!”.

Sobrou pra quem? Pro estagiário aqui, claro.
Foram semanas nessa luta. Igualzinho eu passei agora no meu projeto pessoal, só que lá era com pressão. Lembro de uma vez que ficamos quase um dia com o processamento de vídeo parado porque uma versão específica do FFmpeg que a gente precisava por causa de um filtro X simplesmente não compilava no Alpine de jeito nenhum. Dava erro numa tal de `libvpx` ou algo assim.
O chefe passava toda hora perguntando: “E aí? Já subiu?”. E eu lá, na base do café e Google, tentando entender mensagem de erro em fórum gringo. A solução? Acabamos achando uma imagem Docker não-oficial, feita por um Zé Ninguém num canto obscuro do Docker Hub, que tinha uma versão do FFmpeg que funcionava. Totalmente contra qualquer boa prática, mas era o que tinha pra hoje. Ficou rodando assim, na base da reza brava, até eu sair de lá.
Então, quando falam de Alpine e como é maravilhoso por ser pequeno, eu lembro dessas noites. É bom? É. Mas esteja preparado pra suar a camisa se precisar de algo um pouquinho mais complexo que um “hello world”. Às vezes, o “pesado” que funciona de primeira economiza muito mais tempo e dor de cabeça.