首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用pgadmin4从码头连接本地postgres DB

无法使用pgadmin4从码头连接本地postgres DB
EN

Stack Overflow用户
提问于 2022-03-26 07:02:11
回答 1查看 130关注 0票数 1

我尝试使用pgadmin4连接本地postgres,但是unable to connect to server: timeout expired失败了。我的服务器正在运行,在连接到pgadmin4中的服务器时,我使用了与docker-come.yml文件中提到的相同的属性。

这是我的船坞-Compose.yml

代码语言:javascript
复制
version: "3"

services:
web:
    build:
        context: .
    ports:
        - "8000:8000"
    volumes:
        - ./app:/app
    command: >
        sh -c "python manage.py migrate &&
               python manage.py runserver 0.0.0.0:8000"
    environment:
        - DB_HOST=db
        - DB_NAME=app
        - DB_USER=postgres
        - DB_PASS=secretpassword
    depends_on:
        - db

db:
    image: postgres:10-alpine
    environment:
        - POSTGRES_DB=app
        - POSTGRES_USER=postgres
        - POSTGRES_PASSWORD=secretpassword

这是我在pgadmin4中遇到的错误的屏幕截图

我试图通过检查docker容器将主机地址更改为localhost、host.docker.internal、127.0.0.1和IPAddress。但每次我都得到同样的结果。我还尝试将pgadmin4作为服务添加到我的docker-compose.yml文件中,并进行了尝试,但也得到了相同的结果。

我搞不懂我在这里错过了什么。

提前谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-03-26 07:17:07

首先,您没有从Postgres容器导出任何端口(默认情况下可能是5432 ),然后无法连接8000,因为这是从主机绑定到您的应用程序的。

下面是来自docker-compose 端口的一些描述

在映射HOSTCONTAINER格式的端口时,当使用低于60的容器端口时,可能会遇到错误的结果,因为YAML将xx:yy格式的数字解析为基-60值。因此,我们建议始终显式地将端口映射指定为字符串。

因此,您可以尝试从Postgres从容器导出端口"5432:5432",您的Pgadmin可能需要使用5432端口。

代码语言:javascript
复制
version: "3"

services:
web:
    build:
        context: .
    ports:
        - "8000:8000"
    volumes:
        - ./app:/app
    command: >
        sh -c "python manage.py migrate &&
               python manage.py runserver 0.0.0.0:8000"
    environment:
        - DB_HOST=db
        - DB_NAME=app
        - DB_USER=postgres
        - DB_PASS=secretpassword
    depends_on:
        - db
db:
    image: postgres:10-alpine
    ports:
        - "5432:5432"
    environment:
        - POSTGRES_DB=app
        - POSTGRES_USER=postgres
        - POSTGRES_PASSWORD=secretpassword
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71625983

复制
相关文章

相似问题

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