RailsでMySQL8を使おうとするとこのようなエラーが発生します。
Plugin caching_sha2_password could not be loaded: /usr/lib/x86_64-linux-gnu/mariadb19/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory
ググると原因と対処方法はたくさん出てきますが、どれも大体my.cnfを設定するという内容のものです。
もっとシンプルに対応できないのか?調べたところcommandとして設定を渡せば良いということが分かりました。
docker-composeだとこんな感じです。
MySQLのDockerHubにちゃんと書いてありました。
services:
db:
image: mysql
command: --default-authentication-plugin=mysql_native_password