docker-entrypoint-initdb.d

docker-entrypoint-initdb.d Что это такое в docker

docker-entrypoint-initdb.d - имя директории, скрипты из которой будут автоматически выполнены при построении образа контейнера с БД (MySQL, PostgreSQL)

docker postgres /docker-entrypoint-initdb.d Тире в имени базы и/или имени пользователя. Как настроить

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

Скрипт для /docker-entrypoint-initdb.d можно выглядеть напр. так (с поддержкой создания нескольких БД):

docker postgres /docker-entrypoint-initdb.d Пользователь и БД не создаются заново при rebuild

Дело в том, что /docker-entrypoint-initdb.d выполняется, только если у нас "пустые данные" - т.е. обычно при первом создании контейнера.

Как написано в документации:

scripts in /docker-entrypoint-initdb.d are only run if you start the container with a data directory that is empty; any pre-existing database will be left untouched on container startup

Subscribe to RSS - docker-entrypoint-initdb.d