Таблицы не создаются при инициализации postgres docker с /docker-entrypoint-initdb.d - PullRequest
0 голосов
/ 08 февраля 2020

Я пытаюсь закрутить контейнер postgres из docker -compose, копируя файлы *. sql в /docker-entrypoint-initdb.d, чтобы создать базу данных и схему.

Журналы из docker -композитного прогона:

/usr/local/bin/docker-entrypoint.sh: sourcing /docker-entrypoint-initdb.d/02-schema.sql
db_1          | CREATE DATABASE
db_1          | GRANT
db_1          | SET
db_1          | CREATE TABLE
db_1          | CREATE INDEX
db_1          | CREATE TABLE
db_1          | CREATE TABLE

База данных создана, но не созданы таблицы. Ниже приведена моя схема. sql file

CREATE DATABASE sample_db OWNER user1;
GRANT ALL PRIVILEGES ON DATABASE sample_db TO user1;


CREATE TABLE PUBLIC.PROFILES(
    USER_ID VARCHAR(50) PRIMARY KEY,
    NAME VARCHAR(50) NOT NULL
);

Я делал то же самое с моим контейнером sql, добавляя: USE sample_db, но я не смог найти эквивалентную команду postgres.

1 Ответ

0 голосов
/ 08 февраля 2020

Использовали ли вы переменную окружения POSTGRES_DB в файле docker? Если он не установлен, он будет использовать POSTGRES_USER в качестве имени базы данных

Проверьте переменную среды в документации https://hub.docker.com/_/postgres

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...