下記のようにdocker-compose.ymlに記載して、DockerCompose環境でMinIOを使おうとしました。
docker-compose.yml
minio:
image: minio/minio
ports:
- "9000:9000"
volumes:
- ./.docker/minio/data:/export
environment:
MINIO_ACCESS_KEY: ${AWS_ACCESS_KEY_ID}
MINIO_SECRET_KEY: ${AWS_SECRET_ACCESS_KEY}
command: ['server', '/data']
http://localhost:9000
にアクセスしても、なぜか別ポートにリダイレクトされてしまいました。
調査に時間がかかってしまい完全にハマっていたのですが、ふとdocker-compose up
した時のログを見てみると、
WARNING: Console endpoint is listening on a dynamic port (35135), please use --console-address ":PORT" to choose a static port.
リダイレクトしてしまうポート番号に一致する番号が書かれてる!
こちらの記事が大変参考になったのですが、どうやらMinIOの仕様変更で、--console-address
オプションをつけて起動しないと、ポートが動的に設定されるようになったのだとか。
古い記事を見ながら手探りで構築していたのでハマってしまったようです。
下記のようにdocker-compose.ymlを書き換えることで解決しました。
docker-compose.yml
minio:
image: minio/minio
ports:
- "9000:9000"
- "9001:9001"
volumes:
- ./.docker/minio/data:/export
environment:
MINIO_ACCESS_KEY: ${AWS_ACCESS_KEY_ID}
MINIO_SECRET_KEY: ${AWS_SECRET_ACCESS_KEY}
command: ['server', '/data', '--console-address', ':9001']
普段docker-compose up -d
していたせいで、ログが見つけづらい状況で開発していたのも調査に時間がかかった原因です。
普段からログ出しとく癖は必要ですね、という学びを得ました。