11 - Dockerizando a nossa aplicação e introduzindo o PostgreSQL # Questão 1 Qual a função do arquivo Dockerfile? Definir a rede que o contêiner usaráEspecificar as instruções necessárias para criar uma imagem Docker personalizadaGerenciar o armazenamento de dados dentro do contêinerDefinir o nome do contêiner que será criado # Questão 2 Por que usamos a instrução FROM python:3.11-slim no dockerfile? Para criar uma imagem baseada no sistema operacional WindowsPara definir a imagem base do Docker como uma versão do Python 3.11Para instalar o Python 3.11 no contêiner diretamentePara baixar a versão mais recente do Python no repositório oficial # Questão 3 Qual a função do arquivo compose.yaml? Subir a aplicação de forma simplesEspecificar os serviços e como eles se relacionamSubstituir o DockerfileCriar uma container docker # Questão 4 Qual instrução do Dockerfile o entrypoint substitui? O comando de execução (CMD)A definição da imagem base (FROM)A exposição das portas (EXPOSE) # Questão 5 O que quer dizer escopo nas fixtures? Em quais testes elas vão atuarSe um módulo pode usar aquela fixtureQual a duração da fixtureCapturar as variáveis de ambiente # Questão 6 Por que usamos o escopo de "session" na fixture? Pra dizer que ela vai substituir a fixture de sessionCriar uma sessão do cliente com o banco de dadosDizer que a fixture tem a duração de um testeDizer que a fixture será executada uma única vez durante os testes # Questão 7 Para que serve o volume no docker? Para armazenar as imagens geradasPara adicionar um banco de dadosPara armazenar o cache do dockerPara persistir arquivos na máquina host # Questão 8 O que faz a flag -it no CLI do docker? Conecta o container na internetRoda o container no modo interativoConfigura a rede do dockerPassa as variáveis de ambiente # Questão 9 Por que precisamos usar o TestContainers no projeto? Para executar os testes dentro de containersPara testar os containers da aplicaçãoPara criar imagens durante o testePara iniciar containers durante o teste # Questão 10 Qual a razão de termos instalado a biblioteca psycopg no projeto? Para permitir a conexão entre o banco de dados e o dockerPara permitir a conexão com bancos de dados SQLitePara fornecer suporte a operações de arquivo no sistemaPara permitir a conexão com bancos de dados PostgreSQL no projeto