1

我已经在远程 Debian 8.1 最小 VM 上安装了 PostgreSQL 9.6.1。我正在尝试以服务器模式安装 pgAdmin4,以便能够通过 Web 远程访问。我已经在 python 虚拟环境中成功安装了 pgAdmin4,但是在配置的最后一个步骤中出现了一个问题:

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
4

1 回答 1

1

默认情况下,pgAdmin4 在环回适配器上运行,要使其在以太网 (eth0) 上运行,您需要更改一些配置选项。

您需要添加以下配置选项,

DEFAULT_SERVER = '0.0.0.0'

在 config_local.py 中(在“pgAdmin4”文件夹中)。

如果还想更改默认端口,则还要添加

DEFAULT_SERVER_PORT = 8081

现在重新启动 pgAdmin4,现在尝试使用您提到的 IP 地址(例如http://80.254.0.132:8081)访问 pgAdmin4,它应该可以工作。

于 2017-01-17T07:37:21.927 回答