【问题标题】:Postgresql - authentication failed in DockerPostgresql - Docker中的身份验证失败
【发布时间】:2016-05-11 15:59:52
【问题描述】:

我正在尝试在我的 Docker 容器中运行 postgresql。

这是我用于 postgresql 的 DockerFile

FROM postgres:9.5.2

RUN localedef -i ru_RU -c -f UTF-8 -A /usr/share/locale/locale.alias ru_RU.UTF-8
ENV LANG ru_RU.utf8

ENV POSTGRES_PASSWORD OaO1OHrzTZ3cqyLnju2z
ENV PROJECT_USER test
ENV PROJECT_DATABASE test

COPY config/init-user-db.sh /docker-entrypoint-initdb.d/init-user-db.sh

init-user-db.sh

#!/bin/bash
set -e

psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" <<-EOSQL
    CREATE EXTENSION "adminpack";
    CREATE EXTENSION "autoinc";
    CREATE EXTENSION "cube";
    CREATE EXTENSION "file_fdw";
    CREATE EXTENSION "fuzzystrmatch";
    CREATE EXTENSION "hstore";
    CREATE EXTENSION "insert_username";
    CREATE EXTENSION "intarray";
    CREATE EXTENSION "isn";
    CREATE EXTENSION "lo";
    CREATE EXTENSION "ltree";
    CREATE EXTENSION "moddatetime";
    CREATE EXTENSION "pageinspect";
    CREATE EXTENSION "pgcrypto";
    CREATE EXTENSION "pg_trgm";
    CREATE EXTENSION "postgres_fdw";
    CREATE EXTENSION "refint";
    CREATE EXTENSION "seg";
    CREATE EXTENSION "sslinfo";
    CREATE EXTENSION "tablefunc";
    CREATE EXTENSION "tcn";
    CREATE EXTENSION "timetravel";
    CREATE EXTENSION "unaccent";
    CREATE EXTENSION "uuid-ossp";
    CREATE EXTENSION "xml2";
    CREATE USER "$PROJECT_USER" WITH password 'OaO1OHrzTZ3cqyLnju2z
';
    CREATE DATABASE "$PROJECT_DATABASE" WITH OWNER="$PROJECT_USER" TEMPLATE=template1 ;
    GRANT ALL PRIVILEGES ON DATABASE "$PROJECT_DATABASE" TO "$PROJECT_USER";
    REVOKE ALL PRIVILEGES ON DATABASE "$PROJECT_DATABASE" FROM PUBLIC;
EOSQL

这就是我的应用程序配置中的内容(symfony 3)

parameters:
    database_host: 192.168.99.100
    database_port: 48002
    database_name: test
    database_user: test
    database_password: OaO1OHrzTZ3cqyLnju2z
    mailer_transport: smtp
    mailer_host: 127.0.0.1
    mailer_user: null
    mailer_password: null
    secret: O81s4KSjs8NdxSAacvU82AdC973aSxKdL

如你所见,我在每个地方都有相同的密码 - OaO1OHrzTZ3cqyLnju2z。

但是我得到错误密码验证用户“测试”失败。

缺少什么?为什么它不认证?

【问题讨论】:

    标签: postgresql docker dockerfile


    【解决方案1】:

    您是否直接从源粘贴脚本? 因为看起来您的密码最后一位数字和引号之间有一个空格:

        CREATE USER "$PROJECT_USER" WITH password 'OaO1OHrzTZ3cqyLnju2z
    ';
    

    试试

    CREATE USER "$PROJECT_USER" WITH password 'OaO1OHrzTZ3cqyLnju2z';
    

    【讨论】:

    • 那只是复制粘贴,没有空间。
    猜你喜欢
    • 2015-06-18
    • 2022-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-09
    • 1970-01-01
    • 2021-03-20
    • 2019-10-14
    相关资源
    最近更新 更多