一 elasticsearch安装

1 查找镜像:

docker search elasticsearch

可以看到如下截图;

2 拉取镜像

docker pull elasticsearch

我并没有拉取search的版本,而是新的版本,就可以看到镜像了

docker images

3 启动es

docker run ‐di ‐‐name=tensquare_elasticsearch ‐p : ‐p : elasticsearch

4 浏览器访问:

但是9300端口是无法访问的,所以需要修改文件:

进入容器中:

docker exec ‐it es  /bin/bash

是无法修改elasticsearch.yml这个文件的

docker cp es:/usr/share/elasticsearch/config/elasticsearch.yml /usr/share/elasticsearch.yml

然后需要停止移除原来的容器:

docker stop es 
docker rm  es

重新构建:

docker run -di --name=es -p : -p : -v /usr/share/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml elasticsearch

然后修改宿主机上的elasticsearch.yml文件

将 transport.host: 0.0.0.0 前的#去掉后保存退出

再次启动:

docker restart es

重启后发现重启启动失败了,这时什么原因呢?这与我们刚才修改的配置有关,因为

elasticsearch在启动的时候会进行一些检查,比如最多打开的文件的个数以及虚拟内存

区域数量等等,如果你放开了此配置,意味着需要打开更多的文件以及虚拟内存,所以

我们还需要系统调优,所以需要编辑其他文件:

vi /etc/security/limits.conf 

添加:

* soft nofile
* hard nofile

这里需要注意空格问题,笔者就吃过了亏

再修改:

vi /etc/sysctl.conf

添加vm.max_map_count=655360

然后sysctl ‐p,重启虚拟机就可以了

二 在就是ik分词器的安装

首先将ik分词上传至宿主机,解压,

docker cp ik es:/usr/share/elasticsearch/plugins/
docker restart es

三 head插件安装

docker search  elasticsearch‐head
docker pull 选择版本
docker run ‐di ‐‐name=myhead ‐p :  选择的版本

这一步笔者试了好几个镜像,都无法成功连接最后选择了一个版本的:

docker pull mobz/elasticsearch-head:5

docker run -di  --name=myheader -p 9100:9100 mobz/elasticsearch-head:5

这里那么9200,9300端口都可以使用了.9200是restapi访问的端口,9300是java访问的端口

docker上安装eslaticsearch的更多相关文章

  1. CI与CD之Docker上安装Jenkins

    一.CI,CD,Jenkins的介绍 CI:持续集成(Continuous integration,简称 CI),在传统的软件开发环境中,有集成,但是没有持续集成这种说法,长时间的分支与主干脱离,导致 ...

  2. Docker上安装Redis

    Docker可以很方便的进行服务部署和管理,下面我们通过docker来搭建Redis的单机模式.Redis主从复制.Redis哨兵模式.Redis-Cluster模式 一.在Docker上安装单机版R ...

  3. (1)RabbitMQ在Docker上安装

    1.简介 在来学习RabbitMQ时候,我觉得很有必要先把它的环境先搭建起来,这样后面的示例才能进行.因为之前自己手动在Linux服务器上搭建过Elasticsearch,当时踩过太多坑了,浪费太多时 ...

  4. docker上安装elasticsearch和ik分词器插件和header,实现分词功能

    docker run -di --name=tensquare_es -p 9200: -p 9300:9300 elasticsearch:5.6.8 创建elasticsearch容器(如果版本不 ...

  5. docker上安装nginx服务

    环境     1.开启一个容器,安装nginx,略过   2.假如第一步新启动没映射端口的话,重新把容器保存为镜像然后再重新运行一个新容器,不建议在一个正在运行的容器上做端口映射 docker run ...

  6. 在Docker上安装配置Oracle教程

    地址:https://github.com/wnameless/docker-oracle-xe-11g Docker shell 下: docker pull wnameless/oracle-xe ...

  7. 在腾讯CentOS7.4云服务器上安装Docker,在Docker上安装配置MySQL、Tomcat和Nginx

    提示:以下是在腾讯CentOS7.4云服务器上操作. Docker的基本操作:https://www.cnblogs.com/opsprobe/p/10963098.html 一.安装Docker # ...

  8. 在单机Docker上安装 Traefik 反向代理-负载均衡器

    一.创建Traefik和容器应用的连接网络 sudo docker network create traefik-net 二.下载Traefik样本配置文件wget https://raw.githu ...

  9. DOCKER上安装HASSIO

    更新源列表命令 sudo apt-get update sudo apt-get upgrade –y This is the list of packages you need to have av ...

随机推荐

  1. Drools学习笔记2—Conditions / LHS 匹配模式&条件元素

    Rule的LHS由条件元素(Conditional Elements—CE)和匹配模式(Patterns)组成 Patterns被用来指示出fact的字段约束 每个约束必须为true才能让RHS的ac ...

  2. ORA-04098 trigger 'DBBJ.DB_EV_ALTER_ST_METADATA' is invalid and failed re-validation

    转自:https://blog.csdn.net/dragoo1/article/details/9411105 ORA-04098: trigger 'DBBJ.DB_EV_ALTER_ST_MET ...

  3. [原]实例-简单设计&精简代码&复用代码

    引言 本文以实际项目为例谈一谈我个人对于软件开发的理解,偏细节   软件项目B 基于.net平台,使用WPF框架,c#语言,MVVM模式开发的桌面软件 该软件支持可视化的设计器功能,允许所见即所得的方 ...

  4. C语言学习笔记--#和##操作符

    1. #运算符 (1)#运算符用于在预处理期将宏的参数转换为字符串 (2)#的转换作用是在预处理期完成的,因此只在宏定义中有效,即其他地方不能用#运算符 (3)用法:#define STRING(x) ...

  5. set源码之心得

    C++的STL很强大,强大到我只愿慵懒地去使用而不知其所以然.直到李师问我,我的回答被李师否定,我方才意识到自己是多么地浅陋.希望自己有空抽时间把STL源码给研究一下,化为自己真正可以掌控的力量. s ...

  6. 请用fontAwesome代替网页icon小图标(转)

    1. 引言 网页小图标到处可见,如果一个网页都是干巴巴的文字和图片,而没有小图标,会显得非常简陋.下面的小图标,你是不是会经常用到? 你可能说——“我们用的都是彩色的,不是黑白的”——别着急,下面会讲 ...

  7. C++重载流插入和流输出运算符

    demo: /* Name: 重载输入输出流运算符使力代码 Copyright: qianshou Author: zhaozhe Date: 07/12/13 00:11 Description: ...

  8. boost::thread 库的使用

    转载自:http://blog.csdn.net/yockie/article/details/9181939 概要 通过实例介绍boost thread的使用方式,本文主要由线程启动.Interru ...

  9. Luogu 1445 樱花

    BZOJ 2721 唔,太菜了弄不来. 先通分:得到 $\frac{x + y}{xy} = \frac{1}{n!}$ 两边乘一下 $(x + y)n! - xy = 0$ 两边加上$(n!)^2$ ...

  10. c++调用python引号的问题

    Boost.Python向python里面传递字符串时,引号是个很关键的问题. const char* cstr="hello \\\" world" // hello ...