У меня есть бродячий ящик, установленный с сервером Postgres на нем работает на порту 5432
, и я добавил это к Vagrantfile
:Vagrant - Как получить доступ к гостям сервер Postgres от хоста
config.vm.network "private_network", ip: "192.168.33.33"
config.vm.network "forwarded_port", guest: 5432, host: 3333
Но когда я пытаюсь подключиться к серверу Postgres путем подключения к 192.168.33.33:3333
Я получаю эту ошибку:
Соединение отклонено, это та же ошибка, которую я получу, если попытаюсь подключиться к любым портам, которые не открыты. Я запустил сканер портов на 192.168.33.33 и не видел открытых портов. Это на самом деле то, что я имею в Vagrantfile:
config.vm.network "forwarded_port", guest: 8000, host: 8001
config.vm.network "forwarded_port", guest: 3333, host: 3334
config.vm.network "forwarded_port", guest: 5555, host: 5556
config.vm.network "forwarded_port", guest: 5432, host: 3333
config.vm.network "forwarded_port", guest: 80, host: 8888,
auto_correct: true
и Heres результаты от порта сканера:
Он не обнаружил каких-либо портов выше 995. Как получить доступ к Сервер postgres VMs?
UPDATE: Я нашел способ подключения через локальную (Charlies внушение), кажется, что config.vm.network "forwarded_port"
только вперед порты localhost
. Кроме того, я после этого руководства: https://pseudoscripter.wordpress.com/2016/04/26/allow-remote-hosts-to-connect-to-postgresql-database-server-on-vagrant-box/
и редактируются postgresql.conf
так, чтобы он прослушивает все IP-адреса, добавив следующую строку:
listen_addresses = '*' # what IP address(es) to listen on;
и редактируются pg_hba.conf
разрешить гостям IP-адрес:
host all all 192.168.33.33/24 md5
^^ Этот шаг, вероятно, не имеет никакого отношения к тому, почему он работает на localhost:3333
. Шаги из этого руководства не работали, подключаясь по 192.168.33.33:3333
, но я могу подключиться по адресу localhost:3333
.
решаемых Вместо того, чтобы получить доступ к серверу на гостевом IP через пересылаемые порты, можно получить доступ к порту гостей, так что я могу получить доступ к серверу на 192.168.33.33:5432
в настоящее время. Это не сработало для меня, когда я впервые попытался, поэтому шаги в UPDATE 1 должны были сделать его доступным.
AFAIK, Vagrant свяжет переадресованные порты в 'localhost', поэтому вы должны подключиться к' localhost: 3333' – charli
Да, вы правы, это сработало. Раньше это не сработало, но я изменил несколько вещей, поэтому я обновляю оригинальный пост. Было бы неплохо иметь возможность использовать IP гостевой машины. Должен быть способ сделать это, но делать это так же все равно. Благодарю. –