前提
現在、Docker、Django, MySQLをもちいた開発をおこなっています。しかしながら
docker-compose down
をすると毎度データが消えてしまいます。
superuserなども消えてしまうために、困っています。
実現したいこと
ここに実現したいことを箇条書きで書いてください。
- docker django mysqlのデータの永続化をvolumeを用いて実現したいです。
発生している問題・エラーメッセージ
問題は先ほども述べた通りで、毎度コンテナを破棄すると、データがきえてしまうことです
該当のソースコード
以下にdocker-compose.ymlファイルのソースコードを貼ります。
version: '3' services: mysql: build: ./mysql container_name: Kakeibodb platform: linux/x86_64 #この行を追加。これないと"ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries" image: mysql:5.7 command: "mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci" restart: always environment: MYSQL_DATABASE: Kakeibo # MYSQL_USER: ${MYSQL_ROOT_USER} MYSQL_ROOT_USER: root MYSQL_USER: user MYSQL_ROOT_PASSWORD: # MYSQL_PASSWORD: pwd MYSQL_ALLOW_EMPTY_PASSWORD: "yes" #これ追加 TZ: Asia/Tokyo # MYSQL_PASSWORD: ${MYSQL_PASSWORD} # MYSQL_ALLOW_EMPTY_PASSWORD: ${MYSQL_ALLOW_EMPTY_PASSWORD} volumes: — mysql-data:/var/lib/mysql — mysql-logs:/var/log/mysql restart: always ports: — 3306:3306 expose: - "3306" web: container_name: "#" platform: linux/amd64 build: . command: sh -c "sleep 15 && python manage.py migrate; python manage.py runserver 0.0.0.0:8000" # command: python3 manage.py runserver 0.0.0.0:8000 working_dir: /code ports: - 8000:8000 depends_on: - mysql # extra_hosts: # 追加 # - localhost:172.21.0.3 # 追加 volumes: mysql-data: name: mysql-data mysql-logs: name: mysql-logs # data:
試したこと
いろんな方々のvolumeについての記事をよみ、その通りに実装しましたが、docker-compose downするとデータが消えてしいまい、参考にしている方々となにがちがって問題が起こっているのかがわからないです。。
補足情報(FW/ツールのバージョンなど)
環境 : M1 mac
あなたの回答
tips
プレビュー