Том данных Docker Postgres на хосте

У меня есть простая крошечная проблема. У меня есть приложение (ASPNET Core) и БД (Postgres). Сначала я запускаю контейнер базы данных, а затем запускаю контейнер приложения, чтобы приложение могло обнаружить базу данных во время выполнения. Теперь я могу подключить базу данных Postgres с помощью инструмента pgAdmin (в Windows), и все работает нормально.

Теперь, если я запущу контейнер Postgres с помощью команды объема данных, например:

docker run -p 5432:5432 -d -v pg-data:/var/lib/postgresql/data --network=isolated_network --name postgres -e POSTGRES_PASSWORD=5432 postgres

Здесь я могу подключиться к экземпляру Postgres, работающему в контейнере, и получить там свои данные. Вот у меня вопрос, где на хосте доступен объем данных pg-data?

Более того, если я смонтирую свои каталоги Windows в Docker Engine и выполню команду:

docker run -p 5432:5432 -d -v d:/data:/var/lib/postgresql/data --network=isolated_network --name postgres -e POSTGRES_PASSWORD=5432 postgres

Я вижу папку data на диске D:\, но не могу подключиться к этому экземпляру контейнера Postgres с помощью инструмента pgAdmin, и мое приложение перестает работать.


person Janshair Khan    schedule 04.10.2016    source источник
comment
ты решил это?   -  person Srinath Ganesh    schedule 17.11.2018


Ответы (1)


В Linux расположение тома по умолчанию:

/var/lib/docker/volumes

Для окон я не уверен. но вы можете проверить контейнер, который даст вам путь и все детали, которые вы хотите.

docker inspect containername
person pl_rock    schedule 04.10.2016
comment
Я попытался проверить том, но не нашел путь на хосте. - person Janshair Khan; 04.10.2016