Tag - Dockerfile

elasticsearch docker Dockerfile    2017-07-19 20:25:33    983
官方给出的elasticsearch镜像需要做不少的修改,并且个人感觉镜像有点太大,所以萌生了自己做镜像的想法
此Docker镜像基于alpine的jre8镜像(使用alpine的原因就是没有太多不必要的组件和命令,docker内部也不需要太多组件)

所需文件目录及介绍:
# 文件目录介绍
* elasticsearch 目录为build docker镜像必要文件,主要替换elasticsearch启动文件(bin目录,主要是修改以root用户启动,参考文章:http://blog.csdn.net/gsying1474/article/details/51939294)和添加中文分词插件IK(plugins目录,主要添加了中文分词插件,参考文章:http://blog.csdn.net/gsying1474/article/details/51909027

Dockerfile文件代码:
 
FROM anapsix/alpine-java:jre8
MAINTAINER firewarm LightingLiu <liuyg@liuyingguang.cn>
ENV ES_PKG_NAME elasticsearch-2.3.3
ADD $ES_PKG_NAME.tar.gz /usr/share/
ADD elasticsearch/ /usr/share/$ES_PKG_NAME/
RUN cd /usr/share/ && \
mv $ES_PKG_NAME elasticsearch && \
chmod +x /usr/share/elasticsearch/bin/*
ENV PATH /usr/share/elasticsearch/bin:$PATH
# Define default command.
CMD ["elasticsearch"]
EXPOSE 9200
EXPOSE 9300

# 此处的Dockerfile解决了如下问题:
1. Docker内部以root启动
2. elasticsearch中文分词插件IK

# build命令
docker build -t firewarm/elasticsearch:2.3.3.1 .

# 镜像使用方式
docker run -v /home/elasticsearch/config:/usr/share/elast