Django

Django & Docker

Dockerfile, docker-compose, multi-stage builds, volumes, redes, desenvolvimento vs produção

20 perguntas de entrevista·
Senior
1

Qual imagem base é recomendada para uma aplicação Django em produção?

Resposta

A imagem python:3.x-slim é recomendada porque oferece um equilíbrio entre tamanho reduzido e compatibilidade. Ela contém as bibliotecas essenciais evitando dependências supérfluas das imagens completas. As imagens Alpine, embora mais leves, podem causar problemas de compatibilidade com algumas bibliotecas Python compiladas (como psycopg2).

2

Qual é a principal vantagem de um multi-stage build para uma aplicação Django?

Resposta

O multi-stage build permite reduzir significativamente o tamanho da imagem final ao separar o ambiente de build (com todas as ferramentas de compilação) do ambiente de execução. As dependências são compiladas em uma primeira etapa, depois apenas os arquivos necessários são copiados para a imagem final, excluindo ferramentas de build, arquivos temporários e caches.

3

Em um docker-compose.yml, como garantir que o container Django aguarde até que o PostgreSQL esteja pronto para aceitar conexões?

Resposta

A diretiva depends_on sozinha apenas garante a inicialização do container, não a disponibilidade do serviço. Para aguardar até que o PostgreSQL esteja realmente pronto, é preciso usar um script wait-for-it.sh ou dockerize, ou a condição service_healthy com um healthcheck. Essa abordagem evita erros de conexão ao iniciar a aplicação Django.

4

Qual é a diferença entre COPY e ADD em um Dockerfile para uma aplicação Django?

5

Como otimizar o cache de layers do Docker ao instalar as dependências Python?

+17 perguntas de entrevista

Domine Django para sua proxima entrevista

Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.

Comece gratis