Ответ 1
См. этот ответ
При использовании приложения Docker для Mac кажется, что контейнеры хранятся в виртуальной машине, расположенной по адресу:
~/Library/Контейнеры/com.docker.docker/Data/com.docker.driver.amd64-линукс/Docker.qcow2
Я ищу папку /var/lib/docker
на моем Mac после установки docker для Mac.
С docker info
я получаю
Containers: 5
...
Server Version: 1.12.0-rc4
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 339
Dirperm1 Supported: true
...
Name: moby
ID: LUOU:5UHI:JFNI:OQFT:BLKR:YJIC:HHE5:W4LP:YHVP:TT3V:4CB2:6TUS
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
....
Но у меня нет каталога /var/lib/docker
на моем хосте.
Я проверил /Users/myuser/Library/Containers/com.docker.docker/
, но ничего не мог найти. Любая идея, где она расположена?
См. этот ответ
При использовании приложения Docker для Mac кажется, что контейнеры хранятся в виртуальной машине, расположенной по адресу:
~/Library/Контейнеры/com.docker.docker/Data/com.docker.driver.amd64-линукс/Docker.qcow2
Как упоминалось в приведенных выше ответах, вы найдете его в: screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
После запуска tty вы можете перейти к /var/lib/docker
Другие ответы здесь устарели, если вы используете Docker для Mac.
Вот как мне удалось попасть в ВМ. Запустите команду:
screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty
Это путь по умолчанию, но вам может потребоваться сначала выполнить: cd ~/Library/Containers/com.docker.docker/Data/vms
а затем ls
чтобы увидеть, в каком каталоге находится ваша виртуальная машина, и соответственно замените "0"
Когда вы внутри, вы можете просто увидеть пустой экран. Нажмите клавишу "Enter".
Эта страница объясняет, что для выхода из виртуальной машины вам нужно нажать "Ctrl-a", а затем "d".
Как сказал @Dmitriy:
screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty
и можете использовать ctrl a
+ d
для отсоединения экрана
и используйте screen -dr
, чтобы снова прикрепить экран (так как если вы просто присоедините экран снова, текст терминала будет искажен.)
или если вы хотите выйти, используйте ctrl + a
+ k
, затем выберите y
, чтобы убить экран.
Этот путь происходит от Docker Host (не от MacOS) "Докеры для Mac-приложений", где "виртуальная" виртуальная машина "по умолчанию", и внутри этой виртуальной машины указан упомянутый путь (наверняка), теперь в "Docker for Mac Application" есть изображение Docker.qcow2, которое является qemu base vm. Чтобы прыгать внутри этого пути VM @mik-jagger в порядке (но есть еще несколько)
Я бы сказал, что файл:
/var/run/docker.sock
На самом деле на:
/Volumes/{DISKNAME}/var/run/docker.sock
Если вы запустите это, оно должно это доказать, если ваш VirtualBox 5.2.8 или более поздней версии и общий ресурс для /Volumes
настроены на автоматическое монтирование и постоянный И вы создали докер-машину по умолчанию, находясь в этой версии Virtualbox:
#!/bin/bash
docker run -d --restart unless-stopped -p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock portainer/portainer \
--no-auth
Затем зайдите в Portainer по адресу: 192.168.99.100:9000 или localhost: 9000
кое-что из нити зомби, но, как я только что нашел, здесь есть другое решение, которое не нуждается в экране и не портит оболочку и т.д.
Путь, указанный в docker volume inspect <vol_name>
возвращает путь к контейнеру, что-то вроде:
"Mountpoint": "/var/lib/docker/volumes/coap_service_db_data/_data"
компонент _data
является последним компонентом пути, который вы настроили в разделе volumes:
службы, используя заданный том, например:
volumes:
- db_data:/var/lib/postgresql/data
, ваш пробег будет разным.
Чтобы найти его на Mac, самый простой метод, который я нашел, - это запустить небольшой контейнер и смонтировать корень хоста в каталог /docker
в образе, это даст вам доступ к томам, используемым на хосте.
docker run --rm -it -v /:/docker alpine:edge
с этого момента вы можете перейти к громкости
cd /var/lib/docker/volumes/coap_service_db_data/_data