こんにちは。Takitaです。
dockerで起動したmysqlのコンテナにSequelProで接続しようとしたらできませんでした。
パスワード設定するの面倒だなと思いMYSQLALLOWEMPTY_PASSWORDオプションを利用していたことが原因でした。
docker-compose.yml
version: '3'
services:
db:
image: mysql:5.7
ports:
- "4306:3306"
environment:
MYSQL_USER: "root"
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
a random password for the server's root user is generated when the Docker container is started.
https://github.com/mysql/mysql-docker
dockerコンテナが起動したときにランダムなパスワードを生成してくれるわけです。
つまり、そのパスワードが分からないとSequlProのようなクライアントアプリからmysqlコンテナに接続できません。
開発環境なのでおとなしくパスワードを指定するようにしました。
version: '3'
services:
db:
image: mysql:5.7
ports:
- "4306:3306"
environment:
MYSQL_USER: "root"
MYSQL_PASSWORD: "password"