3
respostas

Módulo 05: Comunicação entre containers

Olá, tudo bem?

Estou no capitulo 05 e acabo de executar o código:

docker pull douglasq/alura-books:cap05

Pois bem, minha dúvida é: Onde ficam esses arquivos?

Estou rodando com um Windows 10 Home com WSL 2 Ubuntu 20.04

Entrando no meu linux encontro a pasta do Docker em /var/lib/docker mas não encontro em lugar nenhum os arquivos ou imagens que baixei.

Gostaria de visualizar os arquivos de mesmo modo que fora feito na aula 03 (se não me engano) onde direcionei uma pasta (no Windows) para trabalhar.

3 respostas

Olá, Bruno. Tudo bem?

Não ficou claro para mim sobre quais arquivos você está falando. Poderia me dizer quais são?

Fico aguardando.

Opa, tudo certo e por ai?

Minha dúvida é com relação aos arquivos da imagem.

Vamos lá, tenho um projeto cujo qual criei uma imagem e outra pessoa faz o pull desta minha imagem com o sistema rodando, caso ela queira alterar algum dos arquivos da imagem que eu gerei, como isso é feito? Onde ficam armazenados estes arquivos?

Ou como no exemplo do projeto da aula onde apenas consegui os arquivos por meio de um link para download e então criar a minha própria imagem com base neles.

Olá, Bruno.

A possibilidade de acessar os arquivos de um projeto que foi entregue por um container vai depender de como esse container foi gerado. Tem projetos na linguagem Go, por exemplo, que são entregues somente na forma do binário gerado, o que não possibilita modificar os arquivos que o geraram.

Mas no caso da imagem docker pull douglasq/alura-books:cap05, os arquivos do projeto estão no diretório /var/www dentro do próprio container. Para você conseguir acessar, você pode rodar o container usando

docker run -it -d douglasq/alura-books:cap05

que vai executar no modo detached (-d) te retornando o terminal da sua máquina e depois executar

docker exec -it [ID-do-container] /bin/bash

Quando você fizer isso, será direcionado para dentro do diretório /var/www, pois o Dockerfile que gerou a imagem deve ter instruido para que esse diretório fosse o WORKDIR. Dentro dele você pode navegar pelos arquivos do container livremente se ele tiver um bash, como foi o caso.