Docker не монтирует volume postgresql на windows 10
При запуске docker-compose, появляется проблема с монтированием папки с данными postgres. Проблема возникает только на windows 10, на macos все работает корректно
Docker-compose
postgres:
image: postgres:12-alpine
ports:
- "5432:5432"
volumes:
- ./database:/var/lib/postgresql/data
env_file:
- .env
Ошибка
This user must also own the server process.
The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
Data page checksums are disabled.
fixing permissions on existing directory /var/lib/postgresql/data ... ok
creating subdirectories ... ok
selecting dynamic shared memory implementation ... posix
selecting default max_connections ... 20
selecting default shared_buffers ... 400kB
selecting default time zone ... Europe/Moscow
creating configuration files ... ok
2020-08-13 10:49:37.512 MSK [51] FATAL: data directory "/var/lib/postgresql/data" has wrong ownership
2020-08-13 10:49:37.512 MSK [51] HINT: The server must be started by the user that owns the data directory.
child process exited with exit code 1
initdb: removing contents of data directory "/var/lib/postgresql/data"
running bootstrap script ... ```
Ответы (1 шт):
Автор решения: Sergei Kirjanov
→ Ссылка
Лучше монтировать volume, которые делает сам docker db:/var/lib/postgresql/data.
Если шарить с хостом ./database -- нужно разбираться с правами.
Если шарить и с виндой -- будет работать медленней.