Why?
db:
image: postgres:13.1-alpine
volumes:
- ./tmp/db:/var/lib/postgresql/data
environment:
POSTGRES_USER: $POSTGRES_USER
POSTGRES_PASSWORD: $POSTGRES_PASSWORD
POSTGRES_DB: $POSTGRES_DB
POSTGRES_USER=postgres
POSTGRES_PASSWORD=password
POSTGRES_DB=test-db
% docker compose config
...
db:
environment:
POSTGRES_DB: ""
POSTGRES_PASSWORD: ""
POSTGRES_USER: ""
...
% docker compose up -d
WARN[0000] The "POSTGRES_PASSWORD" variable is not set. Defaulting to a blank string.
WARN[0000] The "POSTGRES_DB" variable is not set. Defaulting to a blank string.
WARN[0000] The "POSTGRES_USER" variable is not set. Defaulting to a blank string.
ちゃんと書いてるのになんで空文字になってまうんや!とかなり頭を悩ませましたが、
docker compose up -dするときのカレントディレクトリ内に.envがないとダメなんですね・・・
% cd ..
% docker compose config
...
db:
environment:
POSTGRES_DB: test-db
POSTGRES_PASSWORD: password
POSTGRES_USER: postgres
...
コメント