Где хранятся созданные мной тома Docker на компьютере с Windows?

Я понимаю, что тома данных будут локальными для виртуальной машины Linux, работающей в Windows, и не будут доступны на хосте Windows. Вы можете использовать их с другими контейнерами, но не с хоста. Однако мне интересно, можно ли их все-таки найти. когда я проверяю подсистему Windows linux для созданных томов, я получаю:

[
  {
    "CreatedAt": "2018-08-08T09:41:56Z",
    "Driver": "local",
    "Labels": {},
    "Mountpoint": "/var/lib/docker/volumes/my-vol/_data",
    "Name": "my-vol",
    "Options": {},
    "Scope": "local"
  }
]

Но на WSL явно нет docker dir. Можно ли получить доступ к HyperV istance linux, где происходит работа докеров, как проверить там каталог?

Мерси А


person aerioeus    schedule 08.08.2018    source источник
comment
Можете ли вы проверить конфигурацию / информацию о докере? обычно это где-то: C: \ Users \ Public \ Documents \ Hyper-V \ Virtual hard disks   -  person lvthillo    schedule 08.08.2018


Ответы (1)


В Windows Docker работает на виртуальной машине MobyLinuxVM, но вы не можете войти в эту виртуальную машину через Hyper-V Manager. Технически мы не собираемся подключаться к виртуальной машине по SSH, мы создадим контейнер с полным корневым доступом, а затем получим доступ к файловой системе оттуда.

  • Получить контейнер с доступом к Docker Daemon
  • Запустить контейнер с полным корневым доступом
  • Переключиться на файловую систему хоста
  • Откройте командную строку и выполните следующее:

    $ docker run --privileged -it -v /var/run/docker.sock:/var/run/docker.sock 
    jongallant/ubuntu-docker-client 
    $  docker run --net=host --ipc=host --uts=host --pid=host -it --security- 
    opt=seccomp=unconfined --privileged --rm -v /:/host alpine /bin/sh
    $  chroot /host
    

тогда

/ # cd var
/var # cd lib
/var/lib # ls
cni  containerd  docker  kubeadm  kubelet-plugins  log  lost+found  nfs  swap
/var/lib # cd docker
/var/lib/docker # ls
builder  buildkit  containerd  containers  image  network  overlay2  plugins  runtimes  swarm  tmp  trust  volumes
/var/lib/docker # cd volumes
/var/lib/docker/volumes # ls
my-vol
/var/lib/docker/volumes # 
person aerioeus    schedule 08.08.2018