LINUX.ORG.RU

Это означает, что ты запускаешь скрипт из под рута.

Попробуй su - postgres, и потом проверь сможешь ли ты зайти в psql.

LZai
()
Ответ на: комментарий от LZai
psql -h ${POSTGRES_HOST} -U ${POSTGRES_USER} -c "CREATE DATABASE osm;"

out:

+ psql -h location-osm-data-db -U root -c 'CREATE DATABASE osm;'
psql: FATAL:  database "root" does not exist

Если вручную запустить в консоли, то требует пароль и если его ввести, то пишет psql: FATAL: database «root» does not exist

psql -h location-osm-data-db -Uroot -c 'CREATE DATABASE osm;'
Password for user root:

Если сделать так, то

PGPASSWORD=valid_password psql -h location-osm-data-db -Uroot -c 'CREATE DATABASE osm;'

out:

psql: FATAL:  database "root" does not exist
serg002 ★★★
() автор топика
Последнее исправление: serg002 (всего исправлений: 3)
Ответ на: комментарий от LZai

createdb: could not connect to database template1: FATAL: password authentication failed for user «postgres»

А вот так базу создало

root@b99b71360746:/script# createdb -h location-osm-data-db -p 5432 -U root osm
serg002 ★★★
() автор топика
Последнее исправление: serg002 (всего исправлений: 1)
Ответ на: комментарий от serg002

-U root

Бабушка рекомендует открыть документацию по начальной настройке PostgreSQL, прочесть, настроить, внести првильные данные в скрипт.
Если не получается - в JOB.

BaBa_Galya
()
Ответ на: комментарий от LZai

О! Нашел причину! По дефолту оно конектится к базе root, которой нет. Если указать базу, то всё ок

psql -h location-osm-data-db -U root -p 5432 -d postgres -c 'CREATE DATABASE osm'
serg002 ★★★
() автор топика
Ответ на: комментарий от LZai

По дефолту имя базы == имя юзера. Т.к запускается под юзером root, то и базу юзает по дефолту root

 -d, --dbname=DBNAME      database name to connect to (default: "user")
serg002 ★★★
() автор топика
Ответ на: комментарий от serg002

По дефолту оно конектится к базе root, которой нет

psql: FATAL: database «root» does not exist

AnDoR ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.