Projeto Final: Empacotando uma Aplicação Real com Docker
Chegou a hora de juntar tudo. Vamos pegar uma pequena aplicação web, escrever seu Dockerfile, rodá-la com uma porta e uma variável de ambiente, e conectar um base de dados usando o Docker Compose — exatamente o fluxo de trabalho que você vai repetir várias vezes no trabalho real. Cada decisão aqui s
É como cozinhar uma refeição completa depois de dominar cada receita separadamente: agora você junta os ingredientes — aplicação, base de dados, rede — num único prato que funciona.
- compose.yaml
- Um único ficheiro que descreve todos os serviços da aplicação (web, db), a rede entre eles e os volumes. Um único comando, `docker compose up`, sobe todos juntos.
- nome do serviço
- Dentro do Compose, um serviço acessa outro pelo seu nome (por exemplo, db), e o DNS interno resolve isso para o endereço correto. Você não usa localhost entre serviços.
- volume nomeado (named volume)
- Armazenamento gerido pelo Docker conectado ao db, de modo que os dados sobrevivem mesmo quando o contêiner é removido e recriado. Sem ele, cada restart perde o base de dados.