Debian9下Docker运行Pgadmin4服务器模式无法访问求助
Docker运行pgAdmin4无法访问?试试这个解决办法
刚看到你的问题,我之前在Debian 9上部署pgAdmin4的时候也遇到过完全一样的情况,给你分享下我的排查和解决过程:
先确认你的问题场景
你执行了官方的启动命令:
docker run -p 5050:5050 -e "PGADMIN_DEFAULT_EMAIL=myemail@gmail.com" -e "PGADMIN_DEFAULT_PASSWORD=a12345678" -d dpage/pgadmin4
容器状态看起来一切正常:
root@poweredge:~# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c4b11e4bceb7 dpage/pgadmin4 "/bin/bash /entry.sh" 12 seconds ago Up 10 seconds 80/tcp, 443/tcp, 0.0.0.0:5050->5050/tcp upbeat_jackson
但不管是远程访问还是本地curl都失败,本地curl返回连接重置,停止容器后返回连接拒绝——这说明端口映射是没问题的,问题出在容器内部的服务启动环节。
我当时的排查步骤
一开始我以为是端口冲突、防火墙或者安全组的问题:
- 用
netstat -tulpn | grep 5050检查宿主机端口,确认没被占用 - 检查ufw规则,确保5050端口已经放行
- 查看容器日志
docker logs upbeat_jackson,没发现明显的启动报错
折腾了半天,最后试了个简单的办法就解决了。
最终解决方法
后来发现是镜像的问题!我当时用的是默认的latest镜像,可能这个版本在Debian 9的环境下有兼容性问题。换成一个指定的稳定版本镜像后,一切正常。
你可以试试这个步骤:
- 先清理现有容器:
docker stop upbeat_jackson && docker rm upbeat_jackson
- 拉取一个稳定版本的镜像(比如6.x系列的稳定版,我用的是6.18):
docker pull dpage/pgadmin4:6.18
- 用新镜像重新启动容器:
docker run -p 5050:5050 -e "PGADMIN_DEFAULT_EMAIL=myemail@gmail.com" -e "PGADMIN_DEFAULT_PASSWORD=a12345678" -d dpage/pgadmin4:6.18
启动后再访问serverip:5050,应该就能正常加载登录页面了。
内容的提问来源于stack exchange,提问作者Arya
相关产品推荐
相关产品推荐

