如何使用pgAdmin在docker容器上连接postgresql镜像?

时间:2018-04-11 13:43:36

标签: postgresql docker

我刚刚从GitHub克隆了一个项目,在自述文件中它要求我运行docker-compose up来运行PostgreSQL图像......

我假设运行命令后,PostgreSQL服务器映像将在我的电脑上的Docker容器中使用端口5432启动。然后我运行npm installnpm start来启动项目(数据库)表将使用ORM框架自动创建)。但是,当我打开我的pgAdmin连接到服务器时,它说它已成功连接但我找不到创建的那些表。在这里我猜pgAdmin没有连接5432上的PostgreSQL服务器(Docker镜像)...所以我的问题是是否可以使用安装在我本地电脑上的pgAmin来连接已经运行的PostgreSQL服务器Docker镜像,映射到我本地PC的端口5432?

2 个答案:

答案 0 :(得分:0)

是的,你可能只需从Docker容器中获取IP地址,运行下一个命令即可实现。

docker ps

然后使用ID容器:

docker inspect ID container

从Docker配置中搜索IPAddress并使用它从pgAdmin连接。

答案 1 :(得分:0)

docker ps --format "table {{.Names}}\t{{.ID}}" | grep 'postgres'

以上命令将提供通过docker运行的容器名称和Postgres容器ID的列表。如果您有多个Postgres容器,请选择要在Pg-Admin中添加的容器,然后将该Postgres容器的容器ID用于下一个命令

docker inspect <container id> | grep -E -A 1 "IPAddress|Ports"

它将提供您要通过PG-Admin连接的Postgres容器的IP地址和端口。使用该IP地址和端口通过Pg-Admin连接