Согласно официальной документации для postgres: 9,4 от dockerhub:
1 . Обратите внимание:
Предупреждение: переменные, специфичные для Docker, будут иметь эффект, только если вы запустите контейнер с пустым каталогом данных;любая ранее существующая база данных останется нетронутой при запуске контейнера.
2 . PGDATA
переменная среды:
Эта необязательная переменная может использоваться для определения другого местоположения - например, подкаталога - для файлов базы данных. По умолчанию это / var / lib / postgresql / data, но если используемый вами том данных является точкой монтирования файловой системы (как с постоянными дисками GCE), Postgres initdb рекомендует использовать подкаталог (например, / var / lib / postgresql / data /). pgdata) для хранения данных.
В качестве обходного пути обращайтесь к
Вы также можете изменить изображение на конкретное , используя рулевую диаграмму :
Начиная с версии 4.0.0, эту диаграмму можно использовать с официальным изображением Docker PostgreSQL. Помимо указания нового репозитория и тега Docker, важно изменить каталог данных PostgreSQL и точку монтирования тома. По сути, каталог данных PostgreSQL не может быть точкой монтирования напрямую, это должен быть подкаталог.
helm install --name postgres \
--set image.repository=postgres \
--set image.tag=10.6 \
--set postgresqlDataDir=/data/pgdata \
--set persistence.mountPath=/data/ \
stable/postgresql
Вы можете создать шаблон этой диаграммы управления и настройки. С другой точки зрения, основная проблема заключается в том, что вы инициализировали свою базу данных - как вы упомянули в /var/lib/pgsql/9.3/data/backup, поэтому, пожалуйста, проверьте файл docker и ваш docker-entrypoint.sh, чтобы выяснить, где находитсяпроблема.
Пожалуйста, дайте мне знать, если это помогло.