文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

dockerでローカルに複数バージョンのMySQLサーバを一括で生成する!

前回手動でdocker runしてたので、今回はdocker-composeで一括で複数バージョンを用意しちゃいますよ〜
f:id:treeapps:20151128225319p:plain

www.bunkei-programmer.net
↑前回の記事で、docker runで頑張ってMySQLサーバをたてる事ができましたね。

今回はMySQLのバージョン5.5、5.6、5.7を一気に一括で作成してみます。

docker-compose

実はもう準備してあります。
github.com
英語ですが、使い方も全部書きました。

簡単に言うと、git cloneし、docker-compose upするだけで、MySQLのv5.5, 5.6, 5.7の環境が準備できてしまいます。

しかも、それぞれのバージョンごとにmy.cnfを用意してあるので、バージョン毎に設定を変える事もできます。

使用しているimageはMySQL公式のimageです。
https://hub.docker.com/_/mysql/

環境変数を設定すると、MySQL起動時にスキーマ、ユーザ、パスワード、rootパスワードを作成・設定した状態で起動してくれます。その変もバージョン毎に変更できるようにしてあります。

雑感

初回はdocker pullが走ってしまうので、イメージのダウンロードにちょっと時間がかかってしまいますが、これで無茶苦茶簡単にMySQLサーバをフルセットで準備する事ができます。

これでローカル環境にはMySQLサーバではなくMySQLクライアントだけインストールするだけで済むようになります。重たくメモリを喰うMySQLサーバをローカルに起動したり、複数バージョン運用するのに職人芸で対応したりする必要も無くなります。もしまだDMGやexeでローカルにMySQLサーバをインストールしている方がいれば、これを機にdockerに移行してみませんか?