Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Volumes com Docker Desktop para Microsoft Home Edition

Estou rodando o docker desktop no windows home edition. Na aula de volumes é solicitado desabilitar o wsl e configurar a opção "file sharing" no docker desktop. Ocorre que neste versão para o Home Edition, não é possível realizar essa configuração. Como fazer para configurar volumes na versão do docker para MS Home Edition?

5 respostas

Complementando, tentei subir o Pod sem realizar qualquer configuração no Docker Desktop e o Pod fica no status de criação e não finaliza

pod-volume 0/2 ContainerCreating 0 9m21s

solução!

Oi Renato, tudo bem?

Como está usando a versão Home Edition, realmente será necessário usar o WSL 2 nesse caso.

Os mapeamentos para os volumes deverão seguir os caminhos de dentro do seu subsystem linux, por exemplo:

/run/desktop/mnt/host/c/...

Obrigado pelo retorno Daniel. Consegui rodar, colocando o caminho dos volumes como no subsystem linux (estou usando ubuntu 20.04) e incluindo a instrução "DirectoryOrCreate". Verifiquei q o arquivos estava sendo persistido e acessível pelos dois containers, no entanto, ele não estava sendo apresentado na pasta do windows.

Criei um arquivo "teste12.txt" de dentro de um dos containers, e como não localizei na pasta do windows, realizei um find pelo ubuntu. Curiosamente encontrei o arquivo em outro volume montado para execução do Docker (/mnt/wsl/docker-desktop-data). Seria alguma limitação do WSL2 ou será que preciso ajustar essa configuração de volume abaixo?

Trecho do código do arquivo yaml:

  volumes:
    - name: primeiro-volume1
      hostPath:
        path: /mnt/c/teste-volume1
        type: DirectoryOrCreate

Resultado do comando df no subsystem ubuntu:

Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/sdc       263174212  1145380 248590676   1% /
tmpfs            1530936   408372   1122564  27% /mnt/wsl
/dev/sdb       263174212  4490180 245245876   2% /mnt/wsl/docker-desktop-data/isocache
none             1530936       12   1530924   1% /mnt/wsl/docker-desktop/shared-sockets/host-services
/dev/sda       263174212   128772 249607284   1% /mnt/wsl/docker-desktop/docker-desktop-proxy
/dev/loop0        392484   392484         0 100% /mnt/wsl/docker-desktop/cli-tools
tools          233854648 44487360 189367288  20% /init
none             1528644        0   1528644   0% /dev
none             1530936       12   1530924   1% /run
none             1530936        0   1530936   0% /run/lock
none             1530936        0   1530936   0% /run/shm
none             1530936        0   1530936   0% /run/user
tmpfs            1530936        0   1530936   0% /sys/fs/cgroup
C:\            233854648 44487360 189367288  20% /mnt/c

Local onde localizei os arquivos (executando find no ubuntu):

./mnt/wsl/docker-desktop-data/tarcache/entries/docker.tar/3e2162a1f977046e7f545d9574c63a18f656b812ab4edb874e3fabe6508ba0e6/containers/services/docker/rootfs/mnt/c/teste-volume1/teste12.txt
./mnt/wsl/docker-desktop-data/tarcache/entries/docker.tar/3e2162a1f977046e7f545d9574c63a18f656b812ab4edb874e3fabe6508ba0e6/containers/services/docker/tmp/upper/mnt/c/teste-volume1/teste12.txt

Oi Renato, tudo bem?

Nesse caso acaba sendo uma "dor de cabeça" gerada por conta do wsl2, que utiliza o subsystem como sitema de execução do seu Docker.

Valeu Daniel. Grande abraço e obrigado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software