ANÚNCIO

~/questoes/devops

Qual arquivo ou pasta contém os arquivos estáticos prontos para produção após npm run build?

Responda, confira o feedback e use o resultado para orientar sua revisão.
Aula de referência #05 – Como criar uma imagem Docker de uma SPA em React | Thi Code
Para fixar

Onde encontrar os arquivos prontos para produção após npm run build

Conceito central

Quando você executa npm run build em um projeto React, o comando processa todo o código-fonte e gera uma pasta contendo os arquivos estáticos otimizados e prontos para serem colocados em produção. Essa pasta é geralmente chamada de build ou dist e contém JavaScript e CSS minificados, que é exatamente o que você precisa para servir sua aplicação em um servidor ou container Docker.

Por que essa resposta faz sentido

A pasta build (ou dist em alguns projetos) contém os arquivos estáticos finais otimizados e minificados. Esses são os únicos arquivos necessários para rodar a aplicação em produção, sem código-fonte ou dependências extras. É justamente essa pasta que você copia para um container Nginx em um multi-stage build do Docker.

Armadilhas comuns

  • Confundir a pasta build (output) com a pasta src (código-fonte) e tentar usar src em produção
  • Achar que node_modules precisa ser copiado para o container Docker de produção, aumentando desnecessariamente o tamanho da imagem
  • Não entender que o npm run build é um passo obrigatório antes de colocar a aplicação em produção, pois transforma o código em arquivos otimizados

Entenda as alternativas

A

Correto! A pasta build contém todos os arquivos JavaScript e CSS minificados e otimizados, prontos para produção. É dessa pasta que você extrai os arquivos para servir via Nginx em um container Docker.

B

A pasta public contém assets estáticos do projeto (como favicon, imagens e arquivos públicos), mas não é o output do build. Esses arquivos já estão inclusos dentro da pasta build após o comando npm run build executar.

C

A pasta node_modules contém todas as dependências do projeto e é necessária apenas em desenvolvimento. Em produção, você nunca copia node_modules para o container; apenas os arquivos compilados da pasta build.

D

A pasta src contém o código-fonte original em JSX e módulos JavaScript. Isso nunca é enviado para produção; é exatamente o que npm run build transforma em arquivos otimizados dentro da pasta build.

Dica prática: Ao criar um Dockerfile multi-stage para React, use a primeira stage com Node.js para executar npm install e npm run build, depois copie apenas a pasta build para a imagem Nginx final. Isso deixa a imagem muito mais leve e segura, pois o código-fonte não fica exposto em produção.

Revise pensando: Se você rodasse npm run build agora em um projeto React, que tipo de arquivo você esperaria encontrar na pasta gerada: código JSX ou arquivos JavaScript/CSS minificados e otimizados?