Кроме того, в нем не сказано, что его нельзя использовать, но нельзя создавать расширение для непривилегированного пользователя. Во время компоновки образа Docker вы должны создать и / или включить необходимые расширения.
Официальные образы докера postgres будут выполнять скрипт, который находится в папке /docker-entrypoint-initdb.d/
.
Если вы используете официальный образ какбазовый образ (рекомендуется), вы просто создаете файл .sh
, назначаете исполняемый флаг (chmod 755) и добавляете его в папку /docker-entrypoint-initdb.d/
.
Надеемся, это будет работать:
#!/bin/bash
set -e
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname="$POSTGRES_DB"<<-EOSQL
CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
EOSQL