Posted at

DockerでElasticserach

More than 5 years have passed since last update.

前の記事では、Mac上で環境を起動していたが実際はデプロイすることになるのでDockerイメージを作成する。


Dockerfileでビルドする。


Dockerfile

# Elasticsearch server

FROM ubuntu:12.04

RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update -qq
RUN apt-get upgrade -y

RUN apt-get install -y python-software-properties
RUN add-apt-repository ppa:webupd8team/java -y
RUN apt-get update

RUN echo oracle-java7-installer shared/accepted-oracle-license-v1-1 select true | /usr/bin/debconf-set-selections

RUN apt-get install -y git curl oracle-java7-installer wget

RUN wget -O /tmp/elasticsearch.tar.gz https://download.elasticsearch.org/elasticsearch/elasticsearch/elasticsearch-0.90.10.tar.gz
RUN cd /tmp && tar xzf /tmp/elasticsearch.tar.gz
RUN rm -rf /tmp/elasticsearch.tar.gz
RUN mv /tmp/elasticsearch-0.90.10 /elasticsearch

WORKDIR /elasticsearch

VOLUME /elasticsearch

EXPOSE 9200

CMD ./bin/elasticsearch -f


このようなDockerfileを書いて、docker build -t="elasticsearch" とするとDocker Imageが作成される。


起動


Dockerホストの9200番ポートにアタッチして起動

docker run -p 9200:9200 elasticsearch


動的にポートを決定させる

docker run elasticsearch

アタッチされたポートを確認するには、docker psとするか、docker inspect $CONTAINER_ID とする。


Trusted Build

このイメージは、index.docker.ioに登録済みなので、docker run reoring/docker-elasticsearch とすると立ちあげることができる。

GitHub Repository