2017年12月18日月曜日

Raspberry Pi上のDockerでZooKeeperがインストールされたイメージを構築する

1. Apache ZooKeeper Serverをインストールしたイメージのビルドとコンテナの実行
ZooKeeper Serverを実行するイメージを作成するDockerfile
FROM resin/raspberry-pi-alpine-openjdk:8-jre# install zookeeper
RUN wget http://ftp.riken.jp/net/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz \
  && tar xvfz zookeeper-3.4.11.tar.gz \
  && mv zookeeper-3.4.11 /opt/zookeeper \
  && rm -f zookeeper-3.4.11.tar.gz
COPY zoo.cfg /opt/zookeeper/conf/
CMD ["/opt/zookeeper/bin/zkServer.sh", "start-foreground", "/opt/zookeeper/conf/zoo.cfg"]
zoo.cfg
tickTime=2000
dataDir=/var/zookeeper
clientPort=2181

○イメージのビルド
docker build  -t zk-server .

○コンテナの実行
docker run -dit -p 2181:2181 --name zk-server zk-server

2.テスト用コンテナの実行
ZooKeeperのテスト用コンテナをビルドするDockerfile
FROM resin/raspberry-pi-alpine-openjdk:8-jre
# install zookeeper
RUN wget http://ftp.riken.jp/net/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz \
  && tar xvfz zookeeper-3.4.11.tar.gz \
  && mv zookeeper-3.4.11 /opt/zookeeper \
  && rm -f zookeeper-3.4.11.tar.gz
COPY zk-client-test.sh /opt/zookeeper/bin/
CMD ["/opt/zookeeper/bin/zk-client-test.sh"]
zk-client-test.sh
#!/bin/sh
/opt/zookeeper/bin/zkCli.sh -server $ZK_HOST:2181 create /test mydata
/opt/zookeeper/bin/zkCli.sh -server $ZK_HOST:2181 ls /
/opt/zookeeper/bin/zkCli.sh -server $ZK_HOST:2181 get /test
○イメージのビルド
docker build -t zk-client .

○テストコンテナの実行
docker run --rm -it -e ZK_HOST=192.168.1.152 zk-client

○補足
動作環境 Raspberry Pi 3 Model B / Raspbian GNU/Linux 9 (stretch) / Docker 17.05.0-ce

〇関連情報
Raspbian GNU/Linux 9 (stretch)上にDocker CEをインストールする

・Raspberry Pi上のDockerに関する他の記事はこちらを参照してください。

0 件のコメント:

コメントを投稿