您的位置:首页 > 运维架构 > Docker

使用docker搭建一个elasticsearch(5.4)的基础环境

2017-07-07 00:00 309 查看
摘要: elasticsearch下文简称(es)

docker is a cool technology!

这篇文章主要讲解的是搭建一个es的基本环境(默认docker环境已经装机好),

首先使用docker search 语法查找 docker工厂的docker镜像有哪些,我一般默认只使用官方的



docker pull下载elasticsearch,我下载的是5.4版本的,可以自己写一个dockerfile,下面的是我的



注释的可以忽略,当时要装head插件,因为这个镜像是基于jdk的,装node环境就是装不成功,灰常郁闷,然后暂时需求也不大就先注释了

真正的语法就这些

FROM elasticsearch:5.4

MAINTAINER arthuryoung0411@gmail.com

#设置alpine时区
ENV TIMEZONE Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TIMEZONE /etc/localtime && echo $TIMEZONE > /etc/timezone
#设置中文
ENV LANG C.UTF-8

EXPOSE 9100 9200 9300

VOLUME /usr/share/elasticsearch/data

CMD ["elasticsearch"]

这样这个dockerfile就算是写好了

主要的功能就是把时区设置成了上海,打开了9100,9200,9300这三个端口,把/usr/share/elasticsearch/data设置成了可挂在目录,这三个都很关键,必须要设置的

构建容器语句

docker build -t com.hwbim.es/hwelasticsearch:1.0 .

我给该容器名字设置成 com.hwbim.es/hwelasticsearch,版本 1.0

启动容器语句

docker run -itd -p 9100:9100 -p 9200:9200 -p 9300:9300
-v /usr/local/elasticsearch/data:/usr/share/elasticsearch/data
-v /usr/local/elasticsearch/plugins:/usr/share/elasticsearch/plugins
--name hwelasticsearch com.hwbim.es/hwelasticsearch:1.0
-Etransport.host=0.0.0.0 -Ediscovery.zen.minimum_master_nodes=1

主要选项就是 宿机端口的9100 9200 9300 分别于容器的这个端口对应,然后把es的存储数据路径 /data挂载出来,和es的插件存储路径挂载出来,然后设置容器的名字 Etransport是看es设置的,应该是设置host的,最后一个还没仔细看esdockerfile的介绍,此时一个es环境就已经搭建好了,web端访问9200端口,java客户端api访问9300端口,es的数据存储在/usr/local/elasticsearch/data这里,

你可以把插件安装在/usr/local/elasticsearch/plugins这里。

周末愉快!明天继续来加班。。。。。。。。。。。。。。

==============================我是分割线===========================

如果本文写的文章对你有帮助,请你用支付宝扫描一下该红包,享受下阿里红利,我们都有红包,来勉励我写更多的文章。谢谢!

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ElasticSearch jdk docker