docker composeでMySQLのデータ領域をローカルにマウントする

この記事は12/1のDocker2 Advent Calendar, 12/3のHamee Advent Calendarの記事です。

こんにちは。
docker composeめちゃくちゃ便利ですよね。
Chef, Vagrant, Puppet, Ansible, Fabric…とプロビジョニングツールとか仮想化ツールを色々触ってきましたが、
それらよりずば抜けて扱いやすいと思っているツールです。

で、ローカルで開発している時に困るのが、 MySQLをはじめDBにデータを持ってもコンテナを破棄するとデータがすっ飛ぶ 問題です。
軽量なアプリの場合ならDB破棄してシード流して、、、という構成でもイケるかも知れませんが、多くの場合オーバーヘッドが大きすぎてまともに開発できなくなると思います。

Docker for Macを使用している場合はこの問題は難なく解消できるのですが、
docker-machineを使用している場合に恐らくドハマリするので、備忘録として残しておきます。

Continue Reading…

Docker(compose)使い始めてから.env系のライブラリを使わなくなってた

こんにちは。
一時期はAnsibleにお熱でしたが、最近はDocker(-compose)にお熱です。
※それぞれ全く別のツールですが、”開発環境を作る”という視点で見れば手段は違えど目的は同じだと思ってます。

Dockerを利用するようになり、環境変数の注入が簡単になったので気づけば.env系のライブラリ要らなくなっているなあと気づきました。
どんな風に、と言われてもドキュメントの通り使ったらそうなる、としか言い様が無いのですが、
一応備忘録として残しておこうと思います。

Continue Reading…