All streams
Search
Write a publication
Pull to refresh
136
10.1

Редактор

Send message
На Windows и OSX содержимое вольюмов не видно на твоей рабочей машине по понятным причинам, т.к. для работы контейнеров используется дополнительный слой виртуализации.
Именованными вольюмами управляет сам докер, поэтому ты не можешь использовать произвольную папку на твоей рабочей машине в качестве именованного вольюма. Если тебя интересует конкретная папка, то используй bind mount, указывая путь для монтирования нужной директории.
Коллега ответил, но похоже, что ответ где-то потерялся, так что я его продублирую:

Если ты хочешь примонтировать заданную директорию на хосте, то самый простой способ это указать путь до этой директории в docker-compose файле в определении сервиса:
volumes:
— /host/path:/container/path

Например:

services:
  db:
    image: mysql:5.7
    volumes:
     - ./mysql_data:/var/lib/mysql


Если хочешь просто иметь персистетное хранилище для твоего контейнера можно также использовать именованный вольюм. Для этого в определении сервиса указываешь имя вольюма вместо директории на хосте. Например:
services:
  db:
    image: mysql:5.7
    volumes:
      - mydata:/var/lib/mysql

Плюс этот именнованный вольюм еще нужно определить в секции volumes в том же компоуз файле. Следуя примеру, мы можем определить именнованный вольюм следующим образом (в секции mydata ничего не указываем, а берем опции по умолчанию):
  volumes:
    mydata:

Тогда твой вольюм можно будет найти на хосте по пути /var/lib/docker/volumes/.
12 ...
18

Information

Rating
627-th
Location
Россия
Works in
Registered
Activity