nginx代理pgAdmin4(Docker离线安装版)

目标

现在服务器上面已经有pg数据库和nginx服务,现在需要在服务器上面安装一个pgAdmin4图形工具(GUI)通过浏览器web页面来访问这个内网数据库。

安装pgAdmin4

检查服务器架构

使用如下命令:

arch

结果:

x86_64

这里linux服务器是x86_64架构,则docker镜像应该选择:linux/amd64

准备离线docker镜像

现在在本地开发机,准备linux服务器对应的docker镜像,命令如下:

# 在本地机拉取镜像
docker pull --platform linux/amd64 dpage/pgadmin4
# 导出镜像
docker save -o pgadmin4.tar dpage/pgadmin4

然后,将准备好的docker离线镜像上传到Linux服务器上面即可。

手动导入离线安装镜像

# 在服务器上面手动导入pgAdmin4镜像
docker load -i pgadmin4.tar

导入成功后,就可以启动pgAdmin4了。

启动pgAdmin4

docker run --name "pgadmin4" \
	-p 5050:80 \
	-e "PGADMIN_DEFAULT_EMAIL=user@domain.com" \
	-e "PGADMIN_DEFAULT_PASSWORD=SuperSecret" \
	-e "SCRIPT_NAME=/pgadmin4" \
	-l "traefik.frontend.pgadmin4.rule=PathPrefix:/pgadmin4" \
	-d dpage/pgadmin4

配置nginx

打开nginx相关配置,添加如下配置内容:

location /pgadmin4/ {
    proxy_set_header X-Script-Name /pgadmin4;
    proxy_set_header X-Scheme $scheme;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-Port $server_port;
    proxy_pass http://内网ip:5050;
    proxy_redirect off;
}

注意,如果你的Nginx不是使用80端口,一定是需要添加X-Forwarded-Port请求头这一行,添加了这一行,pgAdmin4才知道怎么跳转反向代理的端口。

测试

打开相关nginx代理的网页,类似如下:

http://xxxx:xxx/pgadmin4/

获得pgAdmin4登录web页面即可,如下图:
pgAdmin4效果图

总结

pgAdmin4对于某些要求严格场景,可以让内网数据库通过web方式访问,作为一种临时使用的方式还行。最好的情况还是堡垒机提供更加专业数据库GUI工具。如果平时不需要使用pgAdmin4时候,就需要将它停止,只要需要使用的时候才启动部署。

参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值