問題
正常にパスワードを設定できていれば、下記のように
Redisクライアントからの接続時にパスワードチェックをしてくれるはずなのだが、してくれない。
やったこと
よくあるPostgressのパスワード設定だと下記のように環境変数を設定するだけで、同じような設定がValkeyにもあったのでできるだろうと思った。
environment:
POSTGRES_USER: 'user'
POSTGRES_PASSWORD: 'postgres'
Configuration
Customizable environment variables の欄に下記があったので設定したのだが、
全然、有効にならない。
VALKEY_PASSWORD
VALKEY_PRIMARY_PASSWORD
解決
よく見たら、上記のページはBitnamiが出しているものだった。
valkey公式からDockerImageを取得するなら、
下記のようにコマンドを含めたDockerComposeファイルとすることで、
パスワード付きValkey(Redis)の立ち上げに成功した。
version: '3'
volumes:
rbdata:
services:
valkey:
image: valkey/valkey:8.0.0
ports:
- "6379:6379"
environment:
- VALKEY_PASSWORD=xxxxxxxx
command: >-
bash -c "valkey-server --requirepass $$VALKEY_PASSWORD"
また、BitnamiにてラッピングされたValkeyを使うのであれば、
下記のDockerComposeファイルで
パスワード付きValkey(Redis)の立ち上げに成功した。
ただし、パスワードに@マークを含められないなど細かな制限が増える模様。
version: '3'
volumes:
rbdata:
services:
valkey:
image: bitnami/valkey:8.0.0
ports:
- "6379:6379"
environment:
- VALKEY_PASSWORD=xxxxxxxx
Bitnamiは20年くらい運用されている歴史あるサービスなので依存してしまってもいいかな。