今天在docker PostgreSQL用户名和密码授权的问题上花了一些时间,问题是:
psql: FATAL: password authentication failed for user "postgres"
admin的用户名和密码是可以在docker-compose.yml里设置的,通常我们可以配置为:
postgresql: image: postgres:latest ports: - "5434:5432" volumes: - ./data/pgsql:/var/lib/postgresql/data - ./initialize/pgsql:/docker-entrypoint-initdb.d environment: POSTGRES_USER: postgres POSTGRES_DB: postgres secrets: - pg_superuser_password
某个用户的密码可以在./initialize/pgsql目录的脚本里设置:
#!/bin/bash set -e psql -v ON_ERROR_STOP=1 --username "postgres" <<-EOSQL CREATE USER user WITH PASSWORD 'the-password'; ALTER USER user CREATEDB; EOSQL
只是今天碰巧想修改一下这个密码,所以就把这个脚本里的密码修改了,然后执行命令:
docker-compose up --build -d --force-recreate
而后就一直出现上面的用户授权失败。
Docker中安装DB2的详细教程和DBVisualize的安装教程