Я настраивал postgres в контейнере Docker, когда я отображаю / var / lib / postgresql / data в каталог ./data в каталоге проекта, этот каталог заблокирован и пуст.
Я проверял этот каталог в Docker-контейнере, и все файлы включены в него.
Когда я сопоставляю данные с виртуальным томом, все работает нормально. Pgsql: / var / lib / postgresql / data
Это отлично работает:
version: "3"
volumes:
pgsql: ~
mongo: ~
...
pgsql:
container_name: "pgsql"
hostname: "pgsql"
image: "postgres:9.5"
volumes:
- "pgsql:/var/lib/postgresql/data"
environment:
- "POSTGRES_DB=${DB_NAME}"
- "POSTGRES_USER=${DB_USER}"
- "POSTGRES_PASSWORD=${DB_PASS}"
ports:
- "5432:5432"
Но когда я это сделаю
version: "3"
volumes:
pgsql: ~
mongo: ~
...
pgsql:
container_name: "pgsql"
hostname: "pgsql"
image: "postgres:9.5"
volumes:
- "./data:/var/lib/postgresql/data"
environment:
- "POSTGRES_DB=${DB_NAME}"
- "POSTGRES_USER=${DB_USER}"
- "POSTGRES_PASSWORD=${DB_PASS}"
ports:
- "5432:5432"
Каталог данных на хосте пуст.
Я помню, что то же самое работало в MySQL, причина, по которой я хочу отобразить данные в физический каталог, заключается в том, что я хочу использовать докер в рабочей среде, и я хотел бы хранить данные в виртуальном томе, а также в каталоге .
Заранее спасибо