вот так:
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': os.getenv('POSTGRES_NAME'),
'USER': os.getenv('POSTGRES_USER'),
'PASSWORD': os.getenv('POSTGRES_PASSWORD'),
'HOST': os.getenv('POSTGRES_HOST'),
'PORT': os.getenv('POSTGRES_PORT'),
}
хост db это сервис docker-compose
Вопросики:
Почему мне джанга создаёт базу с именем юзера (фото выше)?
Разве джанга не создаёт бд сама из указанного NAME: dbname ?
Примечание:
но если делать через энтрипоинт файл, запрос CREATE DATABASE ... то естественно всё в поряде, у меня раньше с этим проблем не было, может бвть я что-то упускаю?
зачееееееееем он же вообще к изначальному вопросу не относиться
Ну в текущем раскладе я ни... не вижу, какой то сервис собирается каким то докерфайлом, ну ок, значит все в порядке.
эхх ну на FROM postgres:14.1-alpine COPY docker/entry/ /docker-entrypoint-initdb.d/
в каталоге пусто, но я же писал "но если делать через энтрипоинт файл, запрос CREATE DATABASE ... то естественно всё в поряде", а так там был init.sql файл с содержимым: CREATE DATABASE blogDB; GRANT ALL PRIVILEGES ON DATABASE blogDB TO blogAdmin;
Попробуй запустить как то так db: image: "postgres:13.3-alpine" ports: - "5432:5432" environment: POSTGRES_USER: $DB_USER POSTGRES_PASSWORD: $DB_PASSWORD POSTGRES_DB: $DB_NAME volumes: Свои подставь
Ну и image, если хочешь, тоже свой. По факту у тебя сейчас не должна создавать база с твоим конфигом.
У тебя нейм вроде не тот
Поменяй postresname на postgresdb
кавоооо я же и так передаю переменные
Могу чисто предположить, что т.к. у тебя нет переменной POSTGRES_DB, то создаётся база с именем пользователя.
Обсуждают сегодня