Estou iniciando meus estudos em react e a primeira coisa que fiz foi configurar o ambiente de desenvolvimento.
Mas configurar o ambiente de desenvolvimento às vezes é uma tarefa cansativa. Quem nunca teve problemas com versões incompatíveis? Muita coisa que pode dar errado.
Por isso optei por utilizar o docker. Antes de mais nada você precisa ter 3 coisas instaladas para finalizar esse tutorial com sucesso:
Editor de código
Terminal
Crie um diretório com o nome de sua preferencia, como estou fazendo um curso na Alura vou criar com o nome do projeto que estou desenvolvendo. No caso, o diretório será: /home/sistemas/alura-books.
Entre no diretório criado pelo terminal e execute o seguinte comando:
docker run --rm --volume "/home/sistemas/alura-books:/srv/alura-books" --workdir "/srv/alura-books" --publish 3000:3000 -it node:18.12.1 bash
Segue uma breve explicação sobre os parâmetros deste comando:
--volume "/home/sistemas/alura-books:/srv/alura-books": Cria um link entre a pasta do computador hospedeiro (/home/sistemas/alura-books) com a pasta do contêiner (/srv/alura-books).
--workdir "/srv/alura-books": Diretório inicial quando o container for iniciado.
--publish 3000:3000: Cria um link entre a porta 3000 do contêiner com a porta 3000 do computador hospedeiro.
-it: Cria um link entre o terminal do contêiner com o terminal do computador hospedeiro.
-rm: Remove antigos contêineres (muito útil depois da primeira execução).
Pronto agora você tem um contêiner temporário e pode executar comandos como o npx create-react-app .
Na primeira vez que você executar o docker run, o docker precisara baixar a imagem do node:18.12.1.
Fique atento ao Owner da pasta /home/sistemas/alura-books no computador hospedeiro. No meu caso eu precisei alterar o Owner da pasta e seus arquivos, uma vez que eles foram criados por dentro do contêiner.
Quem estiver usando Linux é só executar este comando no computador hospedeiro:
sudo chown -R <USERNAME> /home/sistemas/alura-books
Muito obrigado pela sua atenção. Espero ter ajudado um pouco de alguma forma.
Top comments (0)