Доброго времени суток, читающий. Решил накидать для себя заметку. Надеюсь, пригодится не только мне.
После одной из тем про PostgreSQL было сказано, что надо бы самостоятельно pgAdmin установить. Как оказалось, настройка имеет пару мелких подводных камушков. В моем случае хост у меня крутится на win10 (по зависящим от крутящемся ПО на оном (аналогов под лин нет)), а в вагранте крутится Убунту 16 версии. Я запускал и linux subsystem (или как там это чудо зовется, когда из коробки линукс под окнами), но мне не понравилось. Какая-то пошлость:)
Поднастроим Vagrant:
Смотрим какой айпи хоста используется в связке хост-вагрант и из той же подсетки выбирем другой адрес (в моем случае - у хоста был 192.168.56.50, поэтому я выбрал 192.168.56.10). Если, уважаемый читающий, ты не в курсе про подсетки или про то, как узнать свой ip, то лучше просто закрой вкладку и не обижайся:).
Прописываем проброс в Vagrantfile опциями (в файле присутствует закомментированный образец - можно вставить строки следующими за закомментированными):
config.vm.network "forwarded_port", guest: 5432, host: 5432 config.vm.network "private_network", ip: "192.168.56.10"
Собсно, все понятно. Из вагранта пробрасываем порт 5432, по которому pgAdmin собирается работать, в сетку хосту и настраиваем гостю адрес.
Далее, чуток шаманаства под гостем. Запускаем вагрант, логинемся в гостя. Подразумевается, что PostgreSQL установлен и работоспособен.
- Авторизация под админом сервера невозможна, когда для оного не установлен пароль (что совершенно логично). Поэтому легким движением запускаем коносль psql для роли postgres:
$ sudo -u postgres psql
и меняем пароль
\password супермегаПароль
- Разрешим серверу БД слушать не только локальные подключения. У нас же база для эксперементов и разработки, да?
Правим любимым редактором
/etc/postgresql/9.5/main/postgresql.conf
И изменяем строку
listen_addresses = 'localhost'
на
listen_addresses = '*'
Думаю, тут все понятно.
А в файлике /etc/postgresql/9.5/main/pg_hba.conf
допишем в конец разрешение подключаться с нашего адреса к серверу.
host all all 192.168.56.10/24 md5
Далее можно ребутнуть сервер и возрадоваться.
$sudo /etc/init.d/postgresql restart
Ах, да, нужно скачать pgAdmin, установить на хост и войти в базу под posggres:супермегаПароль. Думаю, затруднений это не вызовет.