質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

2回答

4623閲覧

docker でmysqlが起動できない

退会済みユーザー

退会済みユーザー

総合スコア0

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2020/02/16 08:01

わからないこと

dockerでmysqlが起動できない。

環境

Django==2.0.4 uwsgi==2.0.17 PyMySQL==0.8.0

docker-compose.yml

version: '3' services: nginx: image: nginx:1.13 ports: - "8000:8000" volumes: - ./nginx/conf:/etc/nginx/conf.d - ./nginx/uwsgi_params:/etc/nginx/uwsgi_params - ./src/static:/static depends_on: - python db: image: mysql:5.7 command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: hoge MYSQL_USER: hoge MYSQL_PASSWORD: hoge TZ: 'Asia/Tokyo' volumes: - ./mysql:/var/lib/mysql - ./sql:/docker-entrypoint-initdb.d python: build: ./python command: uwsgi --socket :8001 --module app.wsgi --py-autoreload 1 --logto /tmp/mylog.log volumes: - ./src:/code - ./src/static:/static expose: - "8001" depends_on: - db

こちらで docker-compose builddocker-compose up をすると以下のエラーになります。

エラー

Attaching to docker-django_db_1, docker-django_python_1, docker-django_nginx_1 db_1 | 2020-02-16 16:54:55+09:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.29-1debian9 started. db_1 | 2020-02-16 16:54:55+09:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' db_1 | 2020-02-16 16:54:55+09:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.7.29-1debian9 started. db_1 | 2020-02-16T07:54:55.681543Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). db_1 | 2020-02-16T07:54:55.687089Z 0 [Note] mysqld (mysqld 5.7.29) starting as process 1 ... db_1 | 2020-02-16T07:54:55.697332Z 0 [Note] InnoDB: PUNCH HOLE support available db_1 | 2020-02-16T07:54:55.697837Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins db_1 | 2020-02-16T07:54:55.698146Z 0 [Note] InnoDB: Uses event mutexes db_1 | 2020-02-16T07:54:55.698440Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier db_1 | 2020-02-16T07:54:55.698729Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.11 db_1 | 2020-02-16T07:54:55.698965Z 0 [Note] InnoDB: Using Linux native AIO db_1 | 2020-02-16T07:54:55.699889Z 0 [Note] InnoDB: Number of pools: 1 db_1 | 2020-02-16T07:54:55.700652Z 0 [Note] InnoDB: Using CPU crc32 instructions db_1 | 2020-02-16T07:54:55.702690Z 0 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M db_1 | 2020-02-16T07:54:55.710909Z 0 [Note] InnoDB: Completed initialization of buffer pool db_1 | 2020-02-16T07:54:55.713161Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority(). db_1 | 2020-02-16T07:54:55.739890Z 0 [ERROR] InnoDB: Cannot create log files because data files are corrupt or the database was not shut down cleanly after creating the data files. db_1 | 2020-02-16T07:54:55.740233Z 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error db_1 | 2020-02-16T07:54:56.348507Z 0 [ERROR] Plugin 'InnoDB' init function returned error. db_1 | 2020-02-16T07:54:56.349107Z 0 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed. db_1 | 2020-02-16T07:54:56.349314Z 0 [ERROR] Failed to initialize builtin plugins. db_1 | 2020-02-16T07:54:56.349511Z 0 [ERROR] Aborting db_1 | db_1 | 2020-02-16T07:54:56.349840Z 0 [Note] Binlog end db_1 | 2020-02-16T07:54:56.350215Z 0 [Note] Shutting down plugin 'CSV' db_1 | 2020-02-16T07:54:56.354331Z 0 [Note] mysqld: Shutdown complete db_1 | docker-django_db_1 exited with code 1
# dbだけ立ち上がらない Name Command State Ports ------------------------------------------------------------------------------------------------- docker-django_db_1 docker-entrypoint.sh mysql ... Exit 1 docker-django_nginx_1 nginx -g daemon off; Up 80/tcp, 0.0.0.0:8000->8000/tcp docker-django_python_1 uwsgi --socket :8001 --mod ... Up 8001/tcp

試したこと

色々と検索して試したことは、一度コンテナの削除をして再度ビルドから試しましたが、うまく行かず
どなたかお分かりの方、ご教示お願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

dataファイルが壊れているようなので、./mysql のなかを、一度全部削除してから試すとどうでしょう(消して大丈夫な場合)。

あと、もし、Windowsホストでdockerを動かしているなら、Windowsのフォルダを/var/lib/mysqlにマウントするのは、いろいろ問題がありそうです。

投稿2020/02/16 14:17

bsdfan

総合スコア4599

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/02/17 00:08

bsdfan 様 ご回答ありがとうございます。 docker は Mac で動かしております。 なるほどです。 一旦、 ./mysql の中を削除してから試してみます。
退会済みユーザー

退会済みユーザー

2020/02/17 04:12

bsdfan 様 ご指摘頂いた通り、 `./mysql` が壊れていたようです。 一旦 `./mysql` を削除してから再度ビルド→起動 の手順でやったら起動できました! ありがとうございます!
guest

0

情報が足りていないので詳しい回答ができません。

とりあえず、最低限はこれだけで起動できるはずです。

db: image: mysql:5.7

今の設定から徐々に設定内容を削除していけばどの項目が原因でエラーになっているかわかるはずです。

投稿2020/02/16 09:15

matsubokkuri

総合スコア751

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2020/02/16 12:08

matsubokkuri 様 ご回答ありがとうございます。 徐々に設定内容の方消して見ましたが、エラー内容は変わらず・・・ 起動できませんでした・・・
退会済みユーザー

退会済みユーザー

2020/02/17 04:15

matsubokkuri 様 ご返信ありがとうございます。 github にの乗せて頂き誠にありがとうございます。 ./mysql 内のファイルが何らかの原因で壊れていたみたいです。 上記コメントの方法で解決できました。 ありがとうございましたm(_ _)m
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問