一切福田,不離方寸,從心而覓,感無不通。

借助 docker 安装 pgAdmin

 

安装 docker 和 nginx

这个看文档即可。

引入现成的 pgadmin 的 docker镜像

 

运行该镜像:

docker run -e SERVER_MODE=true -e PGADMIN_SETUP_EMAIL=berrydigital@gmail.com \
-e PGADMIN_SETUP_PASSWORD=password -d -p 5050:5050 \
-v /home/robert/data:/data chorss/docker-pgadmin4

-e 表示传入容器的环境变量,PGADMIN_SETUP_EMAILPGADMIN_SETUP_PASSWORD 分别为 pgAdmin 登陆的账号密码。
-V /home/robert/data:/data 表示宿主机目录和容器目录对应的映射关系,宿主机目录可以自己设置。运行时可能会因为目录权限报错,需要修改目录权限(本地开发直接改成 777 )。

nginx 配置

 

主要是将请求反向代理到 docker 容器内。

postgresql 配置

默认是 5432 端口,只有本机可以访问,需要修改访问权限:把 postgresql.conf 中的 listen_addresses 的值 设置为 *,表示所有 ip 会被响应。
还需要修改 pg_hba.conf,用于设置连接的许可,添加:
host all all 0.0.0.0/0 md5
表示所有用户及 ip 都可以建立连接,密码加密方式为 md5.

重启 postgresql:sudo service postgresql restart

此时可以通过 YOUR_SERVER_NAME 登陆 pgAdmin 了。

虚拟机ip

进入 pgAdmin 后需要设置 postgresql 所在主机的 ip,也就是虚拟机的 ip:
执行ifconfig取 docker0 的 ip 地址即可。

 

from:https://blog.csdn.net/sun_cainiao/article/details/79475453