Docker でMySQLをいつものように起動しようとしたら、エラーが発生して起動ができなかったので、備忘録として残しておきます。
スポンサーリンク
エラーの内容
エラーの内容は次のようなものです。なんで急に出るようになったんだろう。この前までは起動していたのに。。。。why not?
[Error] –initialize specified but the data directory has files in it. Aborting.
日本語にすると、急須で入れたお茶しか飲みたくないということらしいので、急須でお茶を入れてみることにした。
docker-compose.yml には、次のようにMySQLが格納されるディレクトリを設定してあるので、その中をすべて削除する。
docker-compose.yml
db: image: mysql:5.7.30 volumes: - ./mysql/volumes:/var/lib/mysql
全部消してみる
rm -rf ./mysql/volumes/*
ただ、これだけでは、再度 docker-compose up -d コマンドでコンテナを起動しても上記のエラーがでてしまう。
悩むこと、30分。。。。。
ようやく気付く。正解だったのか、偶然だったのかは不明だが、MySQL(および、他に使用しているのも含む。このときはWEB)のコンテナを削除することでエラーは解消されて、MySQLコンテナが正常に起動しました。
# コンテナの確認 $ docker ps -a # コンテナの削除 $ docker rm [コンテナID] # ビルド $ docker-compose build # 起動(バックグラウンド実行 -d) $ docker-compose up -d
docker とか mac とかホントはすっごい嫌い・・・・・・・