QuickStart系列:docker部署之Elasticsearch

更正-v参数 缺少冒号的错误-2018.3.3

ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。---选自百度百科

官方文档:https://www.elastic.co/cn/

当前版本 6.1.0(2018.1.9)这里使用的是 开发环境 是为了快速部署 

环境: VM虚拟机12上 CentOS7 ,Docker 是ce版本,分配内存4G 

根据官网 设置 m.max_map_count=262144 (这个是最小值,可以根据服务器配置进行增加)。执行 grep vm.max_map_count /etc/sysctl.conf  如果返回vm.max_map_count=262144则成功,否则需要在 /etc/sysctl.conf中添加这一行  )

docker run -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch

或者 将目录挂载在宿主机上:

docker run -p 9200:9200 -p 9300:9300 -v /opt/data/elasticsearch/esdata:/usr/share/elasticsearch/data -e "discovery.type=single-node" elasticsearch

其中 -v 表示挂载docker容器里目录到宿主机的命令 /opt/data/elasticsearch/esdata是宿主机的目录  /usr/share/elasticsearch/data是容器里面的目录 更正缺少冒号的错误

elasticsearch是镜像名,默认是latest版本 也可以加上版本号 例如 elasticsearch:5.6.1

* 最近修改2018-3-3 :elasticsearch  目录下就 data、logs、plugins

docker run -itd -p 9200:9200 -p 9300:9300 -v /opt/data/elasticsearch/logs:/usr/share/elasticsearch/logs -v /opt/data/elasticsearch/data:/usr/share/elasticsearch/data --name mylasticsearch -e "discovery.type=single-node" elasticsearch

说明: it 以交互模式运行容器通常it一起使用,d:后台运行容器,并返回容器ID --name 为容器指定一个名称(mylasticsearch )

9200端口: ES节点 和 外部 通讯使用     9300端口: ES节点之间通讯使用

*****因为elasticsearch目录下有bin目录所以不能直接指定 elasticsearch目录。


参考资料

官方文档:https://www.elastic.co/cn/

Docker安装Elasticsearch: https://www.elastic.co/guide/en/elasticsearch/reference/current/docker.html

原文地址:https://www.cnblogs.com/wtujvk/p/8254101.html