关键词:
文章目录
注意:本方案没有进行数据持久化,切勿用于生产环境
1. 安装docker
docker安装可参考此博客 Docker 从入门到实践系列二 - Docker 安装
2. 拉取elasticsearch镜像
拉取最新版本elasticsearch
docker pull elasticsearch
拉取指定版本elasticsearch,比如拉取7.11.1版本的elasticsearch
docker pull elasticsearch:7.11.1
3. 启动elasticsearch
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d elasticsearch:7.11.1
或者
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d 54d1c07bc236
运行docker镜像参数说明:
-p:端口映射
-e:设置环境变量,discovery.type=single-node(单机运行),ES_JAVA_OPTS="-Xms512m -Xmx512m"(设置JVM参数)
-d:后台启动
–name:容器名称
54d1c07bc236:镜像id
3.1 目录结构
[root@node-123 systemd]# docker exec -it 54d1c07bc236 /bin/bash
[root@54d1c07bc236 elasticsearch]# ls -l
total 560
-rw-r--r-- 1 elasticsearch root 3860 Feb 15 2021 LICENSE.txt
-rw-r--r-- 1 elasticsearch root 545323 Feb 15 2021 NOTICE.txt
-rw-r--r-- 1 elasticsearch root 7263 Feb 15 2021 README.asciidoc
drwxr-xr-x 2 elasticsearch root 4096 Feb 15 2021 bin
drwxrwxr-x 1 elasticsearch root 55 Dec 23 09:40 config
drwxrwxr-x 1 elasticsearch root 19 Dec 23 08:39 data
drwxr-xr-x 1 elasticsearch root 17 Feb 15 2021 jdk
drwxr-xr-x 3 elasticsearch root 4096 Feb 15 2021 lib
drwxrwxr-x 1 elasticsearch root 71 Dec 23 09:41 logs
drwxr-xr-x 57 elasticsearch root 4096 Feb 15 2021 modules
drwxrwxr-x 1 elasticsearch root 25 Dec 23 09:40 plugins
目录结构
目录 | 配置文件 | 描述 |
---|---|---|
bin | 脚本文件,包括启动 Elasticsearch、安装插件,运行统计数据等。 | |
config | elasticsearch.yml | 集群配置文件 |
JDK | Java 运行环境 | |
data | path.data | 数据文件 |
lib | Java 类库 | |
logs | path.logs | 日志文件 |
modules | 包含所有 ES 模块 | |
plugins | 包含所有已安装插件 |
4. 验证elasticsearch是否启动成功
linux内用curl访问: curl http://localhost:9200,输入类似如下的信息表示安装成功
"name": "54d1c07bc236",
"cluster_name": "docker-cluster",
"cluster_uuid": "5UUvjjKKRMeQG9FZvW_mxA",
"version":
"number": "7.11.1",
"build_flavor": "default",
"build_type": "docker",
"build_hash": "ff17057114c2199c9c1bbecc727003a907c0db7a",
"build_date": "2021-02-15T13:44:09.394032Z",
"build_snapshot": false,
"lucene_version": "8.7.0",
"minimum_wire_compatibility_version": "6.8.0",
"minimum_index_compatibility_version": "6.0.0-beta1"
,
"tagline": "You Know, for Search"
5. 插件安装
5.1 安装IK分词器
插件安装可以用elasticsearch-plugin install url命令
比如安装:elasticsearch-analysis-ik(分词器),Ik分词器版本要和ES和Kibana版本保持一致
docker进入容器命令,容器id为 54d1c07bc236
docker exec -it 54d1c07bc236 /bin/bash
plugins安装步骤
cd /usr/share/elasticsearch/plugins/
安装插件,elasticsearch-analysis-ik版本与elasticsearch保持一致,即7.11.1
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.11.1/elasticsearch-analysis-ik-7.11.1.zip
退出容器
exit
重启docker容器
docker restart 54d1c07bc236
5.2 分词器使用验证
ik_smart:智能分词,最少切分,宁缺毋滥,保证查准率
ik_max_word:最大化分词法,最细粒度划分,尽量多的有意义的分词,保证查全率,ik_max_word分词包含 ik_smart
Postman post请求分词测试:http://ip:9200/_analyze
"tokenizer": "ik_smart",
"text": "花城广州"
结果如下:
"tokens": [
"token": "花城",
"start_offset": 0,
"end_offset": 2,
"type": "CN_WORD",
"position": 0
,
"token": "广州",
"start_offset": 2,
"end_offset": 4,
"type": "CN_WORD",
"position": 1
]
6. kibana安装
6.1 docker安装kibana
安装kibana版本与elasticsearch版本一致,即7.11.1
docker pull kibana:7.11.1
6.2 启动kibana
安装完成以后需要启动kibana容器,使用–link连接到elasticsearch容器,命令如下:
docker run --name kibana --link=elasticsearch:elasticsearch -p 5601:5601 -d kibana:7.11.1
启动以后可以打开浏览器输入http://ip:5601就可以打开kibana的界面了。
7、elasticsearch-head安装
elasticsearch-head是用于Elasticsearch监控的插件
镜像 pull
docker pull mobz/elasticsearch-head:5
查看镜像
docker images
输出结果包含mobz/elasticsearch-head
REPOSITORY TAG IMAGE ID CREATED SIZE
hello-world latest feb5d9fea6a5 3 months ago 13.3kB
elasticsearch 7.11.1 bc3d45eba361 10 months ago 819MB
kibana 7.11.1 ecf6e21a953f 10 months ago 1.01GB
mobz/elasticsearch-head 5 b19a5c98e43b 4 years ago 824MB
启动容器
docker run -d --name elasticsearch-head -p 9100:9100 mobz/elasticsearch-head:5
浏览器访问(http://ip:9100/),结果如下:
8、常见问题处理
开始链接elasticsearch服务,会发现链接不上,由于是前后端分离开发,所以会存在跨域问题,需要在服务端做CORS的配置
docker exec -it elasticsearch /bin/bash
vi config/elasticsearch.yml
在elasticsearch.yml的文件末尾添加如下配置,保存,退出容器,并重启
http.cors.enabled: true
http.cors.allow-origin: "*"
参数说明:
参数 | 缺省值 | 说明 |
---|---|---|
http.cors.enabled | false | 是否支持跨域,默认为false |
http.cors.allowed.origin | localhost | 当设置允许跨域,默认为*,表示支持所有域名,如果我们只是允许某些网站能访问,那么可以使用正则表达式。比如只允许本地地址。 /https?😕/localhost(:[0-9]+)?/ |
http.cors.max-age | 1728000(20天) | 浏览器发送一个“预检”OPTIONS请求,以确定CORS设置。最大年龄定义多久的结果应该缓存。 |
http.cors.allow-methods | OPTIONS,HEAD,GET,POST,PUT,DELETE | 允许跨域的请求方式 |
http.cors.allow-headers | X-Requested-With,Content-Type,Content-Length | 跨域允许设置的头信息 |
http.cors.allow-credentials | 是否返回设置的跨域Access-Control-Allow-Credentials头,如果设置为true,那么会返回给客户端。 |
退出容器
exit
重启elasticsearch
执行,54d1c07bc236为elasticsearch容器id
docker restart 54d1c07bc236
或者
docker restart elasticsearch
浏览器再次访问(http://ip:9100/),记得修改elasticsearch地址,显示【集群健康值: green】表示连接elasticsearch成功
docker安装elasticsearch
1、从dockerHub拉取官方ElasticSearch镜像官方仓库:https://hub.docker.com/dockerpullelasticsearch:7.10.12、创建容器挂载目录并授权,持久化容器数据和配置创建三个目录分别挂载配置config、数据data、插件pluginsmkdir-p/elasticsearch/datamkdir-p/elasticsea... 查看详情
docker安装elasticsearch和kibana(代码片段)
创建容器elasticsearchdockerrun--nameelasticsearch-p9200:9200-p9300:9300-e"discovery.type=single-node"-delasticsearch:7.2.0安装analysis-ik中文分词插件cd/usr/share/elasticsearch/plugins/GitHub原链接elasticsearch-plugi 查看详情
docker安装elasticsearch和kibana(代码片段)
文章目录1.安装docker2.拉取elasticsearch镜像3.启动elasticsearch3.1目录结构4.验证elasticsearch是否启动成功5.插件安装5.1安装IK分词器5.2分词器使用验证6.kibana安装6.1docker安装kibana6.2启动kibana7、elasticsearch-head安装8、常见问题处理注意:... 查看详情
使用docker安装elasticsearch和kibana(代码片段)
使用Docker安装安装ES【先读官方文档!!!】拉取镜像dockerpullelasticsearch:7.6.1创建网络dockernetworkcreateelastic加上内存限制启动ESdockerrun-d--namees01-test--netelastic-p9200:9200-p9300:9300-e"discovery.type 查看详情
使用docker安装elasticsearch和kibana(代码片段)
使用Docker安装安装ES【先读官方文档!!!】拉取镜像dockerpullelasticsearch:7.6.1创建网络dockernetworkcreateelastic加上内存限制启动ESdockerrun-d--namees01-test--netelastic-p9200:9200-p9300:9300-e"discovery.type 查看详情
docker安装elasticsearch(代码片段)
什么是Elasticsearch?Elasticsearch是一个实时分布式搜索和分析引擎。它让你以前所未有的速度处理大数据成为可能。它用于全文搜索、结构化搜索、分析以及将这三者混合使用:维基百科使用Elasticsearch提供全文搜索并高亮关键字,... 查看详情
docker安装elasticsearch和kibana(代码片段)
1、下载镜像文件#存储和检索dockerpullelasticsearch:7.6.2#可视化检索数据dockerpullkibana:7.6.2查看虚拟机可用内存free-m2、创建ElasticSearch实例(1)配置mkdir-p/mydata/elasticsearch/configmkdir-p/mydata/elasticsearch/dataecho"http.host:0.0.0.0">/... 查看详情
docker安装elasticsearch(代码片段)
1、下载ealasticsearch和kibanadockerpullelasticsearch:7.6.2dockerpullkibana:7.6.22、在虚拟机上创建目录mkdir-p/mydata/elasticsearch/config创建目录mkdir-p/mydata/elasticsearch/dataecho"http.host:0.0.0.0">/mydat 查看详情
docker安装部署elk教程(elasticsearch+kibana+logstash+filebeat)(代码片段)
作者:万能付博 链接:Docker安装部署ELK教程(Elasticsearch+Kibana+Logstash+Filebeat)ELK是由Elasticsearch、Logstash和Kibana三部分组件组成。Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索... 查看详情
docker下安装elasticsearch和kibana(代码片段)
ElasticSearch安装docker安装esdockerpullelasticsearch:7.2.0启动esdockerrun--nameelasticsearch-p9200:9200-p9300:9300-e"discovery.type=single-node"-delasticsearch:7.2.0修改配置,解决跨域访问问题首先进入到容器中,然后进入到指定目录修改elasticsearch.yml文... 查看详情
docker安装部署elk教程(elasticsearch+kibana+logstash+filebeat)(代码片段)
ELK是由Elasticsearch、Logstash和Kibana三部分组件组成。Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。Logstash是一个完全... 查看详情
使用docker安装elasticsearchelasticsearch-headik分词器和使用(代码片段)
原文:使用Docker安装Elasticsearch、Elasticsearch-head、IK分词器和使用Elasticsearch的安装一、elasticsearch的安装1.镜像拉取dockerpullelasticsearch:tag2.启动dockerrun-it-e"discovery.type=single-node"--name="es"-p9200:9200-p9300:9300 查看详情
docker安装elasticsearch的中文分词器ik(代码片段)
主要问题一定要保证ElasticSearch和ElasticSearch插件的版本一致我是用的是ElasticSearch是5.6.11版本对应elasticsearch-analysis-ik-5.6.11安装插件在线安装进入容器dockerexec-itelasticsearch/bin/bash在线下载并安装./bin/elasticsearch-plugininstallhttps://github.co... 查看详情
处理docker中安装的elasticsearch和kibana链接失败问题:kibanaserverisnotreadyyet
参考技术A在同一台电脑的docker中同时安装了ElasticSearch和Kibana,进行关联时出现异常访问kibana时页面192.168.1.150:5601时显示内容为这个过程中我查了不少的帖子,说的基本都是以下几个可能有人解决成功吧..反正我弄了没成我确认了我... 查看详情
docker安装elasticsearch(代码片段)
因为机器本身已经安装docker,加上直接安装es环境配置比较麻烦,故而采用docker安装1、docker拉取镜像dockerpullelasticsearch:7.6.22、创建挂载目录mkdir-p/opt/soft/elasticsearch/configmkdir-p/opt/soft/elasticsearch/datamkdir-p/opt/soft/elasticse 查看详情
一文教会你如何通过docker安装elasticsearch和kibana详细过程+图解
文章目录1、下载`elasticsearch`2、下载`kibana`3、查看下载的镜像4、创建并且启动容器4.1启动失败第一种情况(权限不足)4.1启动失败第二种情况(配置文件内容写错)5、... 查看详情
docker安装elasticsearch(代码片段)
dockerrun-p9200:9200-p9300:9300--nameelasticsearch-e"discovery.type=single-node"-e"cluster.name=elasticsearch"-v/opt/docker/elasticsearch/plugins:/usr/share/elasticsearch/plugins-v/opt/docker/elasticsearch/data:/usr/share/elasticsearch/data-delasticsearch:7.6.1 查看详情
Akeneo docker安装Elasticsearch报错
】Akeneodocker安装Elasticsearch报错【英文标题】:AkeneodockerinstallationElasticsearcherror【发布时间】:2018-10-1113:37:57【问题描述】:我在安装Akeneov2.3(withdocker)时遇到问题我已运行以下安装步骤:https://docs.akeneo.com/2.3/install_pim/docker/installa... 查看详情