エラー
root@........ :/code# python manage.py makemigrations
/usr/local/lib/python3.7/site-packages/django/core/management/commands/makemigrations.py:109: RuntimeWarning: Got an error checking a consistent migration history performed for database connection 'default': (2002, "Can't connect to MySQL server on 'db' (115)")
などと言われ、dbサーバのbashに入ってデータベースの中身を見てみると、、、
bash(mysql)
mysql> use django_docker
Database changed
mysql> show tables;
Empty set (0.00 sec)
何もなかった!
解決法
ということでリセットしてみようと思いました。
migrations/ を __init__.py を残し削除。そして __pycache__/ の中身は全削除。dockerのイメージをとりあえず削除。
以下のコマンドを実行し、すべてをやり直してみた。
ターミナル
nodaken@MacBook-Pro-kun project % docker-compose build
nodaken@MacBook-Pro-kun project % docker-compose up db -d
nodaken@MacBook-Pro-kun project % docker-compose up web -d
nodaken@MacBook-Pro-kun project % docker-compose exec web bash #dbサーバではなくwebサーバ
root@... :/code# python manage.py makemigrations
root@... :/code# python manage.py migrate
root@... :/code# exit
nodaken@MacBook-Pro-kun project % docker-compose restart
してみると復活しましたとさ。
コピペ
↓コピペ用
macで
docker-compose build && docker-compose up db -d && docker-compose up web -d && docker-compose exec web bash
bash(webサーバ)で
python manage.py makemigrations && python manage.py migrate && exit
macで
docker-compose restart web