結論
パスワードを途中で変えたからなんですが、結局の所、volumeは関係なくて、buildの際に–no-cacheオプションをつけてビルドし直したところ新しいパスワードが反映され、接続できました。
一度落としておいたコンテナを開発環境で数日ぶりに立ち上げ、db:createしようとするとエラーが出ました。
エラー
ActiveRecord::DatabaseConnectionError
There is an issue connecting to your database with your username/password, username: root.
Please check your database configuration to ensure the username/password are valid.
dbコンテナ(PostgreSQL)のパスワードをdocker/password.ymlの環境変数で指定して、appコンテナからの接続情報はdocker-compose.ymlに記載しているのですが、どうもこれを変えたのが反映されていないっぽい。
コンテナを再起動しても、ビルドし直しても、down -v –remove-orphansしても接続できない!グギギ….
一応古いvolumeが残ってないか確認
$ docker volume ls
DRIVER VOLUME NAME
local 1aba15f7bf962b8612f7101526b3a112747d1ffefec5dd5eeb3cf9a764db634e
local fb719cf8d4c5b8e8410bae1258470e054d9c2e8037ecf7524e5d1c5f9fc6a13c
local app_db_data5432
# 消す
$ docker volume rm app_db_data5432
# 使ってないボリュームはpruneで消せる
$ docker volume prune
それでもDBに接続できません。
解決
あ、キャッシュ…..
$ docker-compose build --no-cache
接続できた。(おわり)