如何解决pgAdmin Docker 错误:“用户名或密码不正确”
有一些简单的 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
解决方法
您定义了 PGADMIN_DEFAULT_EMAIL
和 PGADMIN_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
,
也许您已经使用了服务 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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。