2017-01-17 7 views
1

Я установил PostgreSQL 9.6.1 на удаленную виртуальную машину Debian 8.1. Я пытаюсь установить pgAdmin4 в режиме сервера, чтобы я мог удаленно получать доступ через Интернет. Я успешно установлен pgAdmin4 в виртуальной среде Python, но проблема возникает в одном из заключительных этапов конфигурации:Установите pgAdmin на удаленный сервер и настройте без рабочей среды

Starting pgAdmin 4. Please navigate to http://localhost:5050 in your browser.

Поскольку у меня нет рабочего окружения установлена ​​(и я не собираюсь на его установку), как я могу завершить настройку без использования localhost? Я попытался подключиться с использованием общедоступного IP-адреса сервера (например, http://80.254.0.132:5050), но я не могу его разрешить.

У меня нет брандмауэра на уровне VM или сервера/NAT.

Я обновил /etc/postgresql/9.6/main/pg_hba.conf и добавил host all all 0.0.0.0/0 md5 к конфигурации.

Я обновил /etc/postgresql/9.6/main/postgresql.conf и изменил listen_addresses = '*'.

Мои полные шаги, участвующие в пост-Debian установки (без новых пользователей) выглядит следующим образом:

# Initial update. 

apt-get install sudo 
sudo apt-get update && sudo apt-get upgrade -y && sudo apt-get dist-upgrade -y 
sudo apt-get install vim -y 

# Postgres. 
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list' 
wget -q https://www.postgresql.org/media/keys/ACCC4CF8.asc -O - | sudo apt-key add - 

# Install PostgreSQL. 
sudo apt-get update 
sudo apt-get install postgresql postgresql-contrib libpq-dev python-dev 

# Set postgres password. 
sudo -s 
cd ~ 
sudo -u postgres psql postgres 
\password postgres 

# Allow remote connections. 
sudo vim /etc/postgresql/9.6/main/pg_hba.conf 
# host all  all  0.0.0.0/0 md5 
sudo vim /etc/postgresql/9.6/main/postgresql.conf 
# listen_addresses = '*' 
sudo service postgresql restart 

# Python and pgAdmin. 
sudo easy_install pip 
sudo pip install virtualenvwrapper 

# Create the virtual environment and install pgAdmin. 
virtualenv pgadmin4 
cd pgadmin4 
source bin/activate 
sudo apt-get install build-essential libssl-dev libffi-dev python-dev libgmp3-dev 
sudo pip install cryptography pyopenssl ndg-httpsclient pyasn1 
wget https://ftp.postgresql.org/pub/pgadmin3/pgadmin4/v1.1/pip/pgadmin4-1.1-py2-none-any.whl 
pip install pgadmin4-1.1-py2-none-any.whl 
cp ./lib/python2.7/site-packages/pgadmin4/config.py ./lib/python2.7/site-packages/pgadmin4/config_local.py 
python ./lib/python2.7/site-packages/pgadmin4/pgAdmin4.py 

ответ

1

По умолчанию pgAdmin4 работает на петлевой адаптер, чтобы заставить ее работать на локальных сетей (eth0), необходимо измените некоторые параметры конфигурации.

Вам нужно добавить ниже опций конфигурации,

DEFAULT_SERVER = '0.0.0.0'

в config_local.py (в папке "pgAdmin4").

Если же требуется изменить порт по умолчанию, то добавить

DEFAULT_SERVER_PORT = 8081

Теперь перезапустите pgAdmin4, теперь попытайтесь получить доступ к pgAdmin4 с помощью IP-адрес, который вы упомянули (например, http://80.254.0.132:8081), он должен работать.

+0

Отлично! Теперь он работает успешно. Я ценю вашу помощь. – PicoDeGallo