表題の通り。Apache ZooKeeperのDockrefileを作成してみる。
■ 環境
- Apache ZooKeeper 3.4.7
- Docker 1.9.1
- Docker Machine 0.5.5
■ Dockerfile
Dockerのコンテナを”build“するのに必要なファイル。コンテナの設計図的なものである。
とりあえず下記のような単純なDockerfileを作成した。
FROM centos:7
MAINTAINER withsin <withsin@gmail.com>
RUN yum update -y
RUN yum install -y java-1.8.0-openjdk
RUN curl http://archive.apache.org/dist/zookeeper/zookeeper-3.4.7/zookeeper-3.4.7.tar.gz | tar zx -C /opt
RUN ln -s /opt/zookeeper-3.4.7 /opt/zookeeper
RUN mkdir /opt/zookeeper/data
RUN chown -R root:root /opt/zookeeper-3.4.7
RUN mv /opt/zookeeper/conf/zoo_sample.cfg /opt/zookeeper/conf/zoo.cfg
RUN yum clean all
EXPOSE 2181 2888 3888
CMD ["/opt/zookeeper/bin/zkServer.sh", "start-foreground"]
ZooKeeperのバイナリインストール元は下記エントリに書いた通り、”archive“からダウンロードとした。これは新しいversionがリリースされた際に、該当のversionがダウンロードできるのを防ぐためにした。
これで動作を確認する。
■ 動作確認
Dockerfileを置いてあるディレクトリで下記を実行する。
$ docker build -t withsin/zookeeper:3.4.7 .
:
Successfully built 4f7d846734cf
$
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
withsin/zookeeper 3.4.7 4f7d846734cf About a minute ago 770.7 MB
:
$
実行する。
$ docker run -d withsin/zookeeper:3.4.7
稼働してくれたたようである。ログを見てみると正常に動作しているようだ。
以上。