尝试运行pgAdmin4时出错

Ela*_*bak 11 python postgresql flask postgresql-9.4 pgadmin-4

我已经安装了pgAdmin4附带的postgresql 9.6(使用建议的linux安装程序),但是出现了一些错误.

首先,我必须将文件夹名称从"pgAdmin 4"(注意额外空格)更改为"pgAdmin4"以避免"找不到文件错误".

然后我运行sudo python pgAdmin4.py并得到以下错误:

Traceback (most recent call last):
   File "../../pgAdmin4.py", line 24, in <module>
      from pgadmin import create_app
   File "/opt/PostgreSQL/9.6/pgAdmin4/web/pgadmin/__init__.py", line 17, in <module>
      from flask import Flask, abort, request, current_app
ImportError: No module named flask
Run Code Online (Sandbox Code Playgroud)

我尝试了以下相关问题: Flask ImportError:没有名为Flask的模块 - 设法在virtualenv上安装了flask.

但后来我开始得到其他烧瓶相关的模块:flask_babel,flask_login,flask_security.我使用pip安装了所有这些,但是我在丢失的模块上遇到了一个错误htmlmin.minify,我似乎无法安装.

Traceback (most recent call last):
   File "../pgAdmin4.py", line 24, in <module>
      from pgadmin import create_app
   File "/opt/PostgreSQL/9.6/pgAdmin4/web/pgadmin/__init__.py", line 23, in <module>
      from htmlmin.minify import html_minify
ImportError: No module named htmlmin.minify
Run Code Online (Sandbox Code Playgroud)

我还远销PYTHONPATH对瓶的一个,如所描述这里,仍然得到同样的错误.

所以,任何人都知道如何让pgAdmin4在ubuntu environemt上运行?

nyx*_*yxz 8

在遵循有关将 PgAdmin 4 添加到我的 Fedora 28 的文档之后,我以各种可能的方式使用了Docker选项:

mkdir ~/.pgadmin4  # to store config and stuff
docker run -d --rm --network host -v ~/.pgadmin4:/pgadmin thajeztah/pgadmin4
Run Code Online (Sandbox Code Playgroud)

然后访问http://localhost:5050就完成了。

有关更多信息,请参阅https://github.com/thaJeztah/pgadmin4-docker

  • 这是迄今为止最简单的解决方案。我现在在 Chromebook 上运行 Docker 和 pgAdmin4。有关 Chrombook Docker 设置的详细信息,请按照以下步骤操作:在 Chromebook 上安装 Docker curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add - sudo apt-get install apt-transport-https ca-certificates curl gnupg2 software-properties-common sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux /debian $(lsb_release -cs) stable" sudo apt update sudo apt install docker-ce sudo usermod -a -G docker $USER (2认同)

Nur*_*jan 7

根据https://www.pgadmin.org/download/pip4.php.

通过运行以下命令安装virtualenv:

sudo apt-get install virtualenv
Run Code Online (Sandbox Code Playgroud)

您还需要安装这两个库:

sudo apt-get install libpq-dev python-dev 
Run Code Online (Sandbox Code Playgroud)

然后:

cd ~/bin/
virtualenv pgadmin4
Run Code Online (Sandbox Code Playgroud)

我更喜欢使用该~/bin/目录来安装应用程序.

然后你下载pgadmin4-1.1-py2-none-any.whlpgadmin4-1.1-py3-none-any.whl取决于你使用的python版本.对于这个例子,我们使用python 2.7.

你下载pgadmin4:

wget https://ftp.postgresql.org/pub/pgadmin3/pgadmin4/v1.1/pip/pgadmin4-1.1-py2-none-any.whl
Run Code Online (Sandbox Code Playgroud)

激活virtualenv:

. ~/bin/pgadmin4/bin/activate
Run Code Online (Sandbox Code Playgroud)

之后你会(pgadmin4)在终端看到.

在pgadmin4里面运行:

pip install ./pgadmin4-1.1-py2-none-any.whl
Run Code Online (Sandbox Code Playgroud)

之后你必须能够运行pgadmin4:

python ~/bin/pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py 
Run Code Online (Sandbox Code Playgroud)

为了使运行过程更容易,您可以创建别名.例如,在Ubuntu 16.04 LTS中,在~/.bash_aliases文件中添加别名:

alias pgadmin4='. /home/your_username/bin/pgadmin4/bin/activate; /home/your_username/bin/pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py'
Run Code Online (Sandbox Code Playgroud)

your_username应当由真实用户名替换.

然后将执行权限授予例如764以下pgAdmin4.py文件:

/home/your_username/bin/pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.py
Run Code Online (Sandbox Code Playgroud)

您还需要编辑pgAdmin4.py文件并在最顶部添加此行:

#!/home/your_username/bin/pgadmin4/bin/python
Run Code Online (Sandbox Code Playgroud)

your_username你的真实用户名在哪里

这将确保您使用所需版本的python运行应用程序并包含所有必需的依赖项以便运行pgadmin4.

然后运行. ~/.bashrc以应用更改.

所以现在你可以打开你的终端,只需输入pgadmin4即可运行它.

打开浏览器并指向:

http://127.0.0.1:5050
Run Code Online (Sandbox Code Playgroud)

还有一点需要注意 - 如果您需要pgadmin4在桌面模式下运行,则需要更改SERVER_MODE为False:

/home/your_username/bin/pgadmin4/lib/python2.7/site-packages/pgadmin4/config.py
Run Code Online (Sandbox Code Playgroud)

否则,当您访问localhost:5050时,它会询问您的登录名和密码.

希望这可以帮助.