拉取docker镜像:

docker pull docker.elastic.co/elasticsearch/elasticsearch:6.1.1

命令行方式启动

  • 测试环境     :docker run -p 9200:9200 -e "http.host=0.0.0.0" -e "transport.host=127.0.0.1" docker.elastic.co/elasticsearch/elasticsearch:6.1.1
  • 正式环境 
    正式环境下,必须将Linux内核参数vm_max_map_count调到262144以上,设置后在/etc/sysctl.conf文件中检查一下:
  • sysctl -w vm.max_map_count=262144 grep vm.max_map_count /etc/sysctl.conf
  • 如果sysctl -w无效的话,直接vi /etc/sysctl.conf这个文件进行修改。

    正式环境通常需要部署集群,采用docker-compose的方式。

    docker-compose.yml是启动2个Elasticsearch节点并作为集群的例子,启动方式为:

    docker-compose up

  • docker-compose.yml文件内容如下:
  • version: '2'
    services:
    es1:
    image: docker.elastic.co/elasticsearch/elasticsearch:6.1.1
    container_name: es1
    environment:
    - cluster.name=docker-cluster
    - bootstrap.memory_lock=true
    - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    ulimits:
    memlock:
    soft: -1
    hard: -1
    mem_limit: 1g
    volumes:
    - esdata1:/usr/share/elasticsearch/data
    ports:
    - 9200:9200
    networks:
    - esnet
    es2:
    image: docker.elastic.co/elasticsearch/elasticsearch:5.5.2
    environment:
    - cluster.name=docker-cluster
    - bootstrap.memory_lock=true
    - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
    - "discovery.zen.ping.unicast.hosts=es1"
    ulimits:
    memlock:
    soft: -1
    hard: -1
    mem_limit: 1g
    volumes:
    - esdata2:/usr/share/elasticsearch/data
    networks:
    - esnet

    volumes:
    esdata1:
    driver: local
    esdata2:
    driver: local

    networks:
    esnet:

    检查集群的状态(健康情况):
    在浏览器中打开 http://127.0.0.1:9200/_cat/health
    默认的用户名密码:
    elastic/changeme

    在host里可以使用docker logs来查看docker的日志

    安装elasticsearch-head扩展(h5页面),由于elasticsearch 5之后对于head扩展不再支持elasticsearch-plugin的方式和Chrome Extension的方式,需要单独启动一个node服务器,下面使用docker来启动

    docker run -p 9100:9100 -d --name es-head mobz/elasticsearch-head:5

  • 由于head是需要调用es的api的,所以域名最好保持统一,采用之前plugin的访问方式,在nginx上做location proxy

    location /_plugin/head {
    proxy_pass http://devops1-internal:9100/;
    proxy_redirect off;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $host;
    client_max_body_size 10m;
    client_body_buffer_size 128k;
    proxy_connect_timeout 360;
    proxy_send_timeout 180;
    proxy_read_timeout 180;
    proxy_buffer_size 8k;
    proxy_buffers 8 64k;
    proxy_busy_buffers_size 128k;
    proxy_temp_file_write_size 128k;
    }
    最后以 http://localhost/_plugin/head/ 来进行访问

ElasticSearch安装(以Docker的方式)的更多相关文章

  1. centos7+docker+elasticsearch 安装记录+踩坑

    版本: cenos7 :3.10.0-957.21.3.el7.x86_64  (内核需>=3.10 才可以安装) docker: yum安装版本为1.13.1 elasticsearch: 6 ...

  2. ElasticSearch 介绍、Docker安装以及基本检索第三篇

    一.简介 1.1 什么是Elasticsearch? Elasticsearch是一个分布式的开源搜索和分析引擎, 适用于所有类型的数据,包括文本.数字.地理空间.结构化和啡结构化数据.Elastic ...

  3. Docker部署ELK 7.0.1集群之Elasticsearch安装介绍

    elk介绍这里不再赘述,本系列教程多以实战干货为主,关于elk工作原理介绍,详情查看官方文档. 一.环境规划 主机名 IP 角色 节点名 centos01 10.10.0.10 es node-10 ...

  4. Docker&Java&Mysql&Python3&Supervisor&Elasticsearch安装

    目录 docker 安装java 安装mysql 安装Mysql8 安装python3 安装supervisor 安装ElasticSearch 打包images docker yum install ...

  5. [docker]一些经常或不经常用到的镜像启动方法-一些常用的docker启动方式

    一些经常或不经常用到的镜像启动方法 设置容器的TZ另一种办法 参考: https://github.com/spujadas/elk-docker/blob/master/start.sh ## ov ...

  6. ElasticSearch安装及使用

    ElasticSearch安装及使用 ELK由Elasticsearch.Logstash和Kibana三部分组件组成. Elasticsearch 是个开源分布式搜索引擎,它的特点有:分布式,零配置 ...

  7. 3.1_springboot2.x检索之elasticsearch安装&快速入门

    1.elasticsearch简介&安装 1.1.1.elasticsearch介绍 ​ 我们的应用经常需要添加检索功能,开源的 ElasticSearch 是目前全文搜索引擎的首选.他可以快 ...

  8. Elasticsearch使用系列-Docker搭建Elasticsearch集群

    Elasticsearch使用系列-ES简介和环境搭建 Elasticsearch使用系列-ES增删查改基本操作+ik分词 Elasticsearch使用系列-基本查询和聚合查询+sql插件 Elas ...

  9. [原创]在Linux系统Ubuntu14.04上安装部署docker。

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

随机推荐

  1. C语言学习笔记--C语言中变量的属性关键字

    变量属性关键字的使用语法:property type var_name; 1.auto 关键字 auto关键字是C语言中局部变量的默认的关键字,C编译器默认所有的局部变量都是auto的,它表明了被修饰 ...

  2. File 类 操作实例

    File 操作 <介绍> 尽管java.io定义的大多数类是实行流式操作的,File类不是.它直接处理文件和文件系统.也就是说,File类没有指定信息怎样从文件读取或向文件存储:它描述了文 ...

  3. HTTP 400 错误 编译器错误消息: CS0016

    问题:运行程序时提示http 400错误 解决方法: 去掉勾 尝试将网页发布到本地IIS上,发现出现以下错误: 编译器错误消息: CS0016 解决编译器错误消息: CS0016:方法如下: 一般都是 ...

  4. ssh远程转发使远程主机在所有ip上监听

    起因:突然一夜之间电信扰拨号ip全变内网地址了,这样即使用了动态域名,绑定的也不是本机ip,外部无法访问了.虽然打电话找电信反映说是可以改回来,但必须先解决眼前的问题,访问内网服务器上的svn仓库. ...

  5. 在命令行上启动genymotion虚拟机

    自从有了genymotion,多机联调就解放了,一台电脑运行两个genymotion虚拟机毫无压力,不过也看用的是哪种os image,之前我以为google自己的Nexus应该最适应,哪知道开起来比 ...

  6. Java数组转置

    数组转置,就是将打印的数组的列和行进行位置对换. 我们就可以用两个for循环遍历数组,然后交换arr[i][j]与arr[j][i] public class Demo{ public static ...

  7. Head First HTML与CSS(第2版) 中文pdf扫描版

    是不是已经厌倦了那些深奥的HTML书?你可能在抱怨,只有成为专家之后才能读懂那些书.那么,找一本新修订的<Head First HTML与CSS(第2版)>吧,来真正学习HTML.你可能希 ...

  8. Python开发【第三篇】:分支循环

    1. if 条件语句   语法: if 条件: 代码块 # 条件为真执行 else: # else 可选 代码块 # 条件为假执行   示例: n = int(input('请输入一个数字:')) i ...

  9. Boost Python学习笔记(三)

    你将学到什么 在C++中调用Python代码时的传参问题 基础类型 继续使用前面的项目,但是先修改下Python脚本(zoo.py),添加Add和Str函数,分别针对整数.浮点数和字符串参数的测试 d ...

  10. Codeforces Round #527 (Div. 3)F(DFS,DP)

    #include<bits/stdc++.h>using namespace std;const int N=200005;int n,A[N];long long Mx,tot,S[N] ...