1
resposta

[Dúvida] Docker volumes

Estou com duvida sobre volumes no docker, para rodar uma aplicação node com express no docker preciso ter o node instalado na minha maquina para criar o código do app ?... e então passar no docker-compose minha pasta com a aplicação como um volume ?

1 resposta

Oi, Vinícius. Tudo bem?

Você não precisa, necessariamente, ter o node instalado na máquina física para desenvolver uma aplicação Node. Você poderia usar o container Docker como seu ambiente de desenvolvimento e para isso você precisaria criar um diretório para criar o código da aplicação e depois passar ele como volume para o container. Mas para fazer isso, você precisa já ter todos os pacotes que você precisa para desenvolver definidos no seu package.json.

Ter o node instalado na sua máquina vai te ajudar a gerenciar as dependências, pois os comandos npm vão proporcionar que você possa adicionar as dependências corretamente no seu package.json. Neste vídeo tem um tutorial de exemplo de como usar o docker-compose para um ambiente de desenvolvimento para aplicações Node.

Agora caso você não queira mesmo ter o Node instalado, você precisaria rodar uma imagem Base tipo um Debian, executar o shell dentro dele e ir executando todos os comando lá dentro, inclusive a instalação do node, como se estivesse fazendo pela máquina física. E aí você precisaria também ter um volume para que as alterações fiquem salvas. O problema seria garantir que esse volume não seria deletado acidentalmente.

Espero ter ajudado. Bons estudos!