拉取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. docker里安装ubuntu

    使用 Ubuntu 官方镜像 Ubuntu 相关的镜像有很多,这里使用 -s 10 参数,只搜索那些被收藏 10 次以上的镜像 $ docker search -s 10 ubuntu NAME DE ...

  2. HDU 5974 A Simple Math Problem (解方程)

    题意:给定a和b,求一组满足x+y=a && lcm(x, y)=b. 析:x+y = a, lcm(x, y) = b,=>x + y = a, x * y = b * k,其 ...

  3. Android 全局错误管理

    package com.wlwl.yiyuan; import java.io.File; import java.io.PrintWriter; import java.io.StringWrite ...

  4. 如何配置使用Dnsmasq

    此文已由作者赵斌授权网易云社区发布 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.前言 最近为了测试内容分发网络(Content Delivery Network,简称 CDN)CDN在调用 ...

  5. Fetch超时设置和终止请求

    1.基本使用 Fetch 是一个新的端获取资源的接口,用于替换笨重繁琐XMLHttpRequest.它有了Request 和 Response 以及Headers对象的概念,与后端语言请求资源更接近. ...

  6. 使用js页面添加或删除标签

    // 添加var container = document.getElementById('divAudio');container.appendChild(audio); // 删除var cont ...

  7. 如何给自己的开源项目选择和添加 License

    License 的作用:开源 == 为所欲为? 开源并不等于为所欲为! 代码的用途,修改之后的代码有什么要求,开源程序对于原作者的权利和责任等等,都是需要明确的. 开源协议 License 就是这么一 ...

  8. uva12545 比特变换器(贪心)

    uva12545 比特变换器(贪心) 输入两个等长的串S,T(长度小于100),其中S包含字符0,1,?,T中包含0和1.有三种操作:将S中的0变为1,?变为0或1,交换S中的任意两个字符.求将S变成 ...

  9. [Xcode 实际操作]三、视图控制器-(8)在Storyboard中设置初始化视图控制器

    目录:[Swift]Xcode实际操作 本文将演示如何设置故事板的初始视图控制器. 打开自动生成的默认故事板[Main.storyboard] 在打开的故事板中,系统已经生成了一个空白的视图控制器. ...

  10. RequireJS 2.0 API之配置项

    转载自http://blog.csdn.net/kevinwon1985/article/details/8155267 RequireJS 把每一个依赖项当做一个script标签,使用 head.a ...