pgAdmin Docker 错误:“用户名或密码不正确”

时间:2021-01-08 12:49:54

标签: docker pgadmin-4

有一些简单的 docker-compose.yml 文件配置,但我不知道为什么我不能使用 pgadmin4@pgadmin.org 作为电子邮件和 admin 登录到 pgAdmin em> 作为密码。它需要更多配置还是我使用了错误的凭据?

version: "3.7"

services:
    db:
        image: postgres:13.1
        restart: unless-stopped
        env_file:
            - ./.env
        ports:
            - 5432:5432
        volumes:
            - db-data:/var/lib/postgresql/data
            - ./init-db.sh:/docker-entrypoint-initdb.d/init-database.sh
        networks:
            - appNetwork

    pgAdmin:
        container_name: pgAdmin
        # restart: unless-stopped
        image: dpage/pgadmin4:4.29
        environment:
            PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-pgadmin4@pgadmin.org}
            PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin}
            PGADMIN_LISTEN_PORT: 5050
        volumes:
            - pgadmin:/root/.pgadmin
        ports:
            - "5050:5050"
        depends_on:
            -   db
        networks:
            - appNetwork

volumes:
    db-data:
    pgadmin:

networks:
    appNetwork:
        driver: bridge

enter image description here

2 个答案:

答案 0 :(得分:2)

您定义了 PGADMIN_DEFAULT_EMAILPGADMIN_DEFAULT_PASSWORD,并且还使用了持久卷 pgadmin。也许您之前使用不同的电子邮件/密码创建了一个实例,该实例已保存在 pgadmin 卷中,并且不会被您新定义的变量覆盖。

您可以尝试删除堆栈容器和卷:

# WARNING: this will delete all containers and volumes
# including pg_data volume and pgadmin volume
# make sure to make a backup if needed
docker-compose down -v 

或者,您可以停止 pgAdmin 容器并专门删除 pgadmin 卷:

docker-compose rm -s pgAdmin

# Replace project_name by your Docker Compose project name
# Use docker volume ls to show all volumes and choose the proper one
docker volume rm project_name_pgadmin

然后重新创建 pgAdmin 容器和卷(以及其他必要的组件):

docker-compose up -d

答案 1 :(得分:1)

也许您已经使用了服务 pgAdmin 及其相关容器:container_name: pgAdmin

解决方案是为它们提供其他名称,如下所示:

pgAdminNew:
    container_name: pgAdmin_new
    # restart: unless-stopped
    image: dpage/pgadmin4:4.29
    environment:
        PGADMIN_DEFAULT_EMAIL: ${PGADMIN_DEFAULT_EMAIL:-pgadmin4@pgadmin.org}
        PGADMIN_DEFAULT_PASSWORD: ${PGADMIN_DEFAULT_PASSWORD:-admin}
        PGADMIN_LISTEN_PORT: 5050
    volumes:
        - pgadmin:/root/.pgadmin
    ports:
        - "5050:5050"
    depends_on:
        -   db
    networks:
        - appNetwork