首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用GUI连接到码头容器中的Postgresql

用GUI连接到码头容器中的Postgresql
EN

Stack Overflow用户
提问于 2020-04-25 21:31:26
回答 1查看 3.1K关注 0票数 2

我刚开始学习docker,我决定创建一个postgresql容器,我想使用它作为我的数据库。

但问题是,每次我试图用Gui (PostBird)连接到postgresql容器时,都会收到一个错误,上面写着“连接意外终止”。

我的配置文件:

代码语言:javascript
复制
postgres:
  image: postgres:alpine
  restart: always
  ports:
    - '3000:3000'
  environment:
    POSTGRES_USER: root
    POSTGRES_PASSWORD: root
    POSTGRES_DB: adonisvue
  volumes:
    - ./init:/docker-entrypoint-initdb.d/

我使用的命令:

代码语言:javascript
复制
sudo docker-compose up

当postgres容器运行时,它会说“数据库系统已经准备好接受连接了”,但我无法与gui连接,甚至使用connect url。

我不得不把我的港口改为3000,因为码头商说,5432港口已经在使用,但我没有任何集装箱运行在里面。是因为psql吗?

抱歉,我对这件事很陌生,我有很多问题要问xD

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-25 21:54:31

我不得不将我的端口更改为3000,因为停靠者说端口5432已经在使用,但是我没有任何容器在运行。是因为psql吗?

是的,这很可能是因为您有其他postgresql在本地机器上使用这个端口。同时,在容器中运行的postgres实例仍然使用端口5432 (除非您也更改了容器内的端口,但我确信您没有更改端口)。因此,下面的端口设置是错误的。

代码语言:javascript
复制
ports:
  - '3000:3000'

这是将主机上配置的任何IP的3000端口映射到容器的3000端口.没有服务的情况下。尝试:

代码语言:javascript
复制
ports:
  - '3000:5432'

然后,您可以在本地机器上连接到端口3000上的postgres,该端口将将数据包转发到容器内的端口5432。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61432889

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档