Я запускаю docker в windows, настраивая среду разработки. Один из моих сервисов - postgresql, и сценарии инициализации не запущены. Я уверен, что это так, потому что когда создается контейнер, разрешение для файлов не устанавливается исполняемым, но я не уверен, как установить эти разрешения, чтобы они передавались в контейнер из разрешений windows.
Docker Compose
testdb:
build: ./postgresdb_docker
restart: always
environment:
POSTGRES_PASSWORD: XXXXXXXXXX
ports:
- "5432:5432"
volumes:
- ./postgresdb_docker/sql_files:/docker-entrypoint-initdb.d
- ./postgresdb_docker/posgresql.conf:/etc/postgresql/postgresql.conf
Сценарий инициализации
export PGPASSFILE="/root/.pgpass"
dropdb --if-exists -U postgres XXXXX
createdb -U postgres XXXXX
pg_dump -U postgres -h 10.0.1.9 --no-privileges --no-owner XXXXX|psql -U postgres XXXXX
Вывод журнала (также база данных не создана проверена с помощью инструмента sql)
testdb_1 | /usr/local/bin/docker-entrypoint.sh: ignoring /docker-entrypoint-initdb.d/*