首页 > 解决方案 > 无法连接到 Windows 上的 Docker 容器

问题描述

我有一个看起来像这样的 docker-compose 文件

version: "3"

services:
  db:
    image: postgres
    restart: always
    ports:
    - "5432:5432"
    environment:
      POSTGRES_USER: michael
      POSTGRES_PASSWORD: pass123

  admin:
    image: dpage/pgadmin4
    restart: always
    environment:
      PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-pgadmin4@pgadmin.org}
      PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin}
      PGADMIN_CONFIG_SERVER_MODE: 'False'
    ports:
      - "5050:5050"

我运行docker-compose up -d,我可以看到我的应用程序从 Docker Desktop 运行。但是,我无法pgadmin使用localhost. 有任何想法吗?

标签: dockerdocker-composedockerfilepgadmin

解决方案


根据此处的文档https://www.pgadmin.org/docs/pgadmin4/latest/container_deployment.html,pgAdmin的 Docker 容器默认在端口 80 上运行

您正在通过映射公开端口 5050。将环境变量添加PGADMIN_LISTEN_PORT到 docker_compose 以使 pgAdmin 在端口 5050 上运行

或者

将端口映射更改5050:80为 pgAdmin 服务


推荐阅读