ElasticsearchとKibanaを簡単に試すためのDockerコンテナを作成するためのDockerファイルです。
Erasticsearchはクラスタを構成できるのでひとつのコンテナにKibanaと共存させるのは良くないでしょうが、どんなものか試す目的なら共存させても良いかと。
Elasticsearchのバージョンが上がって通信元IPに制限がかかるようになったようです。
” –network.host 0.0.0.0′” のオプションで制限を外しています。
Dockerfile
FROM ubuntu MAINTAINER risaiku # # setup # RUN useradd elakiba RUN apt-get -y update RUN apt-get -y upgrade # # install wget # RUN apt-get -y install wget # # install java # RUN apt-get -y install openjdk-7-jre-headless # # install elasticsearch # RUN wget https://download.elasticsearch.org/elasticsearch/release/org/elasticsearch/distribution/tar/elasticsearch/2.1.1/elasticsearch-2.1.1.tar.gz RUN tar zxvf elasticsearch-2.1.1.tar.gz RUN mv elasticsearch-2.1.1 /usr/local/ RUN rm -f elasticsearch-2.1.1.tar.gz RUN chown -R elakiba /usr/local/elasticsearch-2.1.1 # # install kibana # RUN wget https://download.elastic.co/kibana/kibana/kibana-4.3.1-linux-x64.tar.gz RUN tar zxvf kibana-4.3.1-linux-x64.tar.gz RUN mv kibana-4.3.1-linux-x64 /usr/local/ RUN rm -f kibana-4.3.1-linux-x64.tar.gz RUN chown -R elakiba /usr/local/kibana-4.3.1-linux-x64 # # install supervisor # RUN apt-get install -y supervisor RUN touch /etc/supervisord.conf RUN echo '[supervisord]' >> /etc/supervisord.conf RUN echo 'nodaemon=true' >> /etc/supervisord.conf RUN echo '[program:elasticsearch]' >> /etc/supervisord.conf RUN echo 'command=/usr/local/elasticsearch-2.1.1/bin/elasticsearch --network.host 0.0.0.0' >> /etc/supervisord.conf RUN echo 'stdout_logfile=/var/log/elasticsearch.log' >> /etc/supervisord.conf RUN echo 'stderr_logfile=/var/log/elasticsearch.err' >> /etc/supervisord.conf RUN echo 'user=elakiba' >> /etc/supervisord.conf RUN echo '[program:kibana]' >> /etc/supervisord.conf RUN echo 'command=/usr/local/kibana-4.3.1-linux-x64/bin/kibana' >> /etc/supervisord.conf RUN echo 'stdout_logfile=/var/log/kibana.log' >> /etc/supervisord.conf RUN echo 'stderr_logfile=/var/log/kibana.err' >> /etc/supervisord.conf RUN echo 'user=elakiba' >> /etc/supervisord.conf EXPOSE 5601 9200 VOLUME /usr/share/elasticsearch-2.1.1/data ENTRYPOINT ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"]
起動方法
sudo docker run -d -p 5601:5601 -p 9200:9200 -v /var/docker-volume/elakiba:/usr/share/elasticsearch-2.1.1/data --name elakiba_0_0_0 risaiku/elakiba:1.0.0