• ubuntu install pgAdmin4


    用py写的flask web server 用web页面作为postgres的客户端 GUI,安装在本地就可以了。

    一、容器

     参考 https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html

    docker-compse.yml 

    version: '3.7'
    
    services:
      pgAdmin4:
        restart: always
        image: dpage/pgadmin4:latest
        environment:
          PGADMIN_DEFAULT_EMAIL: abc@xmail.com
          PGADMIN_DEFAULT_PASSWORD: 1111
        ports:
          - "8080:80" #页面
        

    启动:

    docker-compose up

    然后就可以用浏览器打开

    http://127.0.0.1:8080

    看见pgAdmin4的登录界面,就算成功。表示flask web server 已经启动了。

    用chrome登录一遍,记住用户邮箱和密码,也就不用每次都输入了。

    唯一美中不足的是:连接数据库时 Host 要填 局域网中的ip地址,不能127.0.0.1

    事实证明这样安装最简单。

    把这个写进真正项目的docker-compse.yml  更省事。

    避免了 本地安装python wheel,和pgAdmin4本身不断提示升级。

    二、Python Wheel

    参考https://linuxhint.com/install-pgadmin4-ubuntu/

    安装依赖

    $ sudo apt-get install build-essential libssl-dev libffi-dev libgmp3-dev 
    virtualenv python-pip libpq-dev python-dev

     确认当前是py版本:和pip安装的库路径

    马上2020年1月, py2就不支持了. 所以确认一下都是py3.6.

    python
    from distutils.sysconfig import get_python_lib
    print(get_python_lib())

    我自己竟然发现默认版本是不知什么时候装的Anaconda3,

    想卸载,官网https://docs.anaconda.com/anaconda/install/uninstall/  提示 卸载只能删除,2333

    确认 pip是2的还是3的

    进入文件夹

    /usr/local/bin

    看看,pip 是更像 pip2 还是更像pip3,否则pip了半天,还是运行不了

    python2 到2020年就不支持了,确保pip 和python都指向系统自带的3.6 

    下载安装。

    居然不发布到pip上,几个意思

    wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v4.16/pip/pgadmin4-4.16-py2.py3-none-any.whl --no-check-certificate
    
    sudo -H pip3 install pgadmin4-4.16-py2.py3-none-any.whl

    安装了一堆py库,净是老面孔,2333

     如果出现

    Cannot uninstall 'psutil'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.

    sudo -H pip3 install pgadmin4-4.16-py2.py3-none-any.whl --ignore-installed

     参考https://www.pgadmin.org/faq/#2

    运行

    sudo xed /usr/local/lib/python3.6/dist-packages/pgadmin4/config_distro.py

    sudo xed /usr/local/lib/python3.7/site-packages/pgadmin4/config_distro.py

    加入SERVER_MODE = False

    然后再运行,不然必须输入email+pwd 烦。

    sudo python3 /usr/local/lib/python3.6/dist-packages/pgadmin4/pgAdmin4.py 

    python3.7 /usr/local/lib/python3.7/site-packages/pgadmin4/pgAdmin4.py

    结果

    OSError: [Errno 13] Permission denied: '/var/lib/pgadmin'

     参考:

    https://stackoverflow.com/questions/46707935/oserror-errno-13-permission-denied-var-lib-pgadmin

    sudo mkdir "/var/log/pgadmin"
    sudo chmod a+wrx "/var/log/pgadmin"
    
    sudo mkdir "/var/lib/pgadmin"
    sudo chmod a+wrx "/var/lib/pgadmin"

    居然是用flask写的一个web! 访问默认网址http://127.0.0.1:5050/browser/#

    有点意思

     

    看见除了默认的postgres数据库之外, 已经创建出了1个template_postgis数据库,包含几个extention(dockerfile 安装时initdb-postgis.sh里定义)

     

    三、APT

    https://wiki.postgresql.org/wiki/Apt

    但是说缺少秘钥,没成功。

  • 相关阅读:
    android 入门-ID
    Win10 VS2015 社区版切换到VS2013社区版 进行维护之前的项目
    Win10 AppBar
    Win10 保存Element到相册
    LRUCache c#
    Winform解决界面重绘闪烁的问题
    使用Emit实现给实体赋值
    Winform 自定义窗体皮肤组件
    WPF 分享一种背景动画效果
    使用MEF与Castle实现AOP
  • 原文地址:https://www.cnblogs.com/xuanmanstein/p/13029310.html
Copyright © 2020-2023  润新知