2015年10月7日水曜日

CentOS 6.6ベースでMySQL 5.6 + Mroongaを簡単に試すDockerfile

書きました。--no-cacheでビルドすれば、ビルドした時点の最新のMySQL 5.6と最新のMroongaでビルドされるはず。


FROM yoku0825/cent66:init

RUN echo "NETWORKING=yes" > /etc/sysconfig/network
RUN yum install -y which
RUN rpm -ivh http://packages.groonga.org/centos/groonga-release-1.1.0-1.noarch.rpm
RUN rpm -ivh http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
RUN yum install -y mysql-community-mroonga groonga-tokenizer-mecab
RUN service mysqld start && mysql -e "GRANT ALL ON *.* TO root@'%' WITH GRANT OPTION"

EXPOSE 3306
ENTRYPOINT /usr/sbin/mysqld --user=mysql

https://gist.github.com/yoku0825/9f76b7f112bc89903999


yoku0825/cent66:init は my_script/make_centos_baseimage_for_docker.sh at master · yoku0825/my_script を使って作った必要最小限(のように見える)CentOS 6.6のイメージで、whichとか入ってないのでこのDockerfileの中で入れてる。

CentOS 6.xならFROMの部分を変えればそのまま動くので、好きなベースイメージにしてあげればいい。
CentOS 7.xの場合、mysql-community-releaseのrpmファイルが変わるのでここ からRHEL 7用のやつに書き換えないといけないのと、serviceコマンドが動かない(CentOS 6.5の上のカーネルで動かしているので、systemctlも動かせなかった)ので、なんかもうちょっと書き換える必要がある。


しかし、Dockerfile作ったって言うこともなさそうなほどお手軽にインストールできるようになったなぁ。。MroongaがMySQLの公式yumリポジトリーに対応してくれたのが大きい。


Docker Hubにpushしてみたので、


$ sudo docker run -d yoku0825/cent66:mroonga508

とやるとおもむろにMroongaを試せるようになっております。

0 件のコメント :

コメントを投稿