Контейнер Postgres не принимает пароль из переменной окружения

Я использую контейнер postgres как часть моего микросервисного приложения. Это мой dockerfile:

FROM postgres:alpine
COPY *.sh /docker-entrypoint-initdb.d/

Я могу создать этот образ и опубликовать его в своем реестре изображений Azure. Также я могу использовать это изображение в моем файле док-станции:

version: '3.4'

services:
    webserver:
        image: myreg.azurecr.io/webserver:latest
        volumes:
            - /etc/letsencrypt:/etc/letsencrypt
            - /var/lib/letsencrypt:/var/lib/letsencrypt
        ports:
            - 80:80
            - 443:443

    postgres:
        image: myreg.azurecr.io/postgresql:latest
        environment:
            POSTGRES_PASSWORD: my-super-secure-password
        volumes:
            - /data/postgresql:/var/lib/postgresql
            - /data/postgresql/data:/var/lib/postgresql/data

....

Но когда я пытаюсь подключиться к этому контейнеру, я получаю следующий журнал (из этого контейнера)

2018-04-03 10:37:40.836 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2018-04-03 10:37:40.836 UTC [1] LOG:  listening on IPv6 address "::", port 5432
2018-04-03 10:37:40.850 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/
2018-04-03 10:37:40.936 UTC [17] LOG:  database system was shut down at 2018-04-03 1
2018-04-03 10:37:40.956 UTC [1] LOG:  database system is ready to accept connections
2018-04-03 10:37:48.924 UTC [24] FATAL:  password authentication failed for user "postgres"
2018-04-03 10:37:48.924 UTC [24] DETAIL:  User "postgres" has no password assigned.
Connection matched pg_hba.conf line 95: "host all all all md5"

Но когда я иду в этот контейнер с docker exec Я вижу свой пароль:

$ docker exec -it 7224df929a21 bash
# printenv
PG_SHA256=3ccb4e25fe7a7ea6308dea103cac202963e6b746697366d72ec2900449a5e713
HOSTNAME=7224df929a21
TERM=xterm
PG_MAJOR=10
POSTGRES_PASSWORD=my-super-secure-password
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/
LANG=en_US.utf8
SHLVL=1
HOME=/root
PG_VERSION=10.1
PGDATA=/var/lib/postgresql/data
_=/bin/printenv

Что я тут не так делаю?

0 ответов

Другие вопросы по тегам