MySQLコンテナ作成時にSQLを実行する
最終更新日:2022-05-09
MySQLコンテナ作成時、テーブル作成の目的でSQLを実行したいときがあります。ここではその方法を紹介します。
ホスト側にSQLが書かれたファイルを用意する
実行順序はファイル名のアルファベット順です。 0001
のように数値のプレフィックスをつけておくとよいでしょう。
$ mkdir initdb
$ emacs initdb/0001_create_db.sql
/docker-entrypoint-initdb.dにマウントする
先ほど作成した initdb
フォルダをコンテナの /docker-entrypoint-initdb.d
にマウントして、コンテナを起動します。
$ docker run -d -v './initdb:/docker-entrypoint-initdb.d' mysql