Где находятся тома докеров? - PullRequest
0 голосов
/ 26 февраля 2019

Необходимо знать, где находятся тома докера при использовании докера на MacOS.При установке используется boot2docker, поэтому виртуальная машина работает.

Пример:

docker volume create test-data

docker inspect показывает путь, но где я могу найти конкретное (физическое) местоположение?

Ответы [ 3 ]

0 голосов
/ 26 февраля 2019

Он находится внутри виртуальной машины и не доступен напрямую с хоста.

Команды уровня отладки, такие как docker volume inspect, покажут вам путь, но на самом деле они предназначены только для аварийной отладки, а не для рутиныиспользовать.Если у вас есть способ получить оболочку в виртуальной машине, вы можете увидеть этот путь, но вам действительно не следует напрямую обращаться к файлам там, и вы не должны регулярно docker inspect ничего делать.

0 голосов
/ 11 июня 2019

macOS использует виртуальную машину Это отличается от Linux, где вы можете получить доступ к томам из / var / lib / docker / volume.Для macOS вам нужно подключиться к виртуальной машине, чтобы найти ваши тома.

Если вы используете постоянные тома данных в Docker и хотите получить к ним доступ из командной строки.

Если ваш хост докераLinux, это не проблема;тома Docker можно найти по пути / var / lib / docker / volume .

Однако при использовании Docker для Mac это не так.Попробуйте cd / var / lib / docker / volume с вашего терминала MacOS, вы ничего не получите.

Видите ли, ваш компьютер Mac не является настоящим хостом Docker.Docker для Mac запускает виртуальную машину и скрывает ее от вас, чтобы упростить задачу.

Итак, для доступа к постоянным томам, созданным Docker для Mac, вам необходимо подключиться к этой виртуальной машине.

InДля этого нам нужно использовать последовательный терминал на Mac.Нам поможет терминальное приложение, которое называется «screen».

Нам нужно «прокрутить» драйвер Docker, выполнив команду:

screen ~ / Library / Containers / com.docker.docker / Data / com.docker.driver.amd64-linux / tty

  1. screen ~ / Библиотека / Контейнеры / com.docker.docker / Данные / com.docker.driver.amd64-linux/ tty
  2. Вы должны увидеть пустой экран, просто нажмите Enter, и через некоторое время вы увидите приглашение командной строки
  3. Теперь вы находитесь внутри виртуальной машины Docker и можете переходить в томаdir, набрав: cd / var / lib / docker / volume

Прибыль, вы получили!

Если вам нужно перенести файлы с вашего хоста MacOS на хост Docker, вы можете обратиться Общий доступ к файлам

Надеюсь, это поможет вам!

0 голосов
/ 26 февраля 2019

Обычно, если вы хотите «знать», где находится том, вам нужно сопоставить том с локальной файловой системой.Когда вы создаете именованный том, вы просто выделяете «общее» хранилище.Однако, если вам действительно нужно знать, выполните эту команду:

docker volume inspect test-data
...