elasticsearch docker(在Docker中安装Elasticsearch7.6.2的教程)
elasticsearch docker
在Docker中安装Elasticsearch7.6.2的教程安装docker
你要安装完成docker,不再说明了。
安装Elasticsearch
注意:使用版本为 7.6.2,你可以选择其他版本
拉取镜像
docker pull elasticsearch:7.6.2
启动容器
docker run --restart=always -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
--name='elasticsearch' --cpuset-cpus="1" -m 2G -d elasticsearch:7.6.2
说明:
1. -v /opt/hanlp:/opt/hanlp如果使用了hanlp的分词,所以需要挂载词库
2. ES_JAVA_OPTS可以设置参数
3. 单节点启动
访问地址:http://172.18.63.211:9200
插件安装
安装ik 分词器
下载对应的版本:elasticsearch-analysis-ik
为什么安装IK,轻量级。配置好词库也是可以用来中文分词,HanLP重量级,内置算法较多,不适合单独分词使用。
# 离线安装,下载对应插件zip # https://github.com/medcl/elasticsearch-analysis-ik docker cp /opt/elasticsearch-analysis-ik-7.6.2.zip elasticsearch:/opt docker exec -it elasticsearch bash cd plugins/ mkdir analysis-ik unzip -d /usr/share/elasticsearch/plugins/analysis-ik/ /opt/elasticsearch-analysis-ik-7.6.2.zip exit docker restart elasticsearch
自定义词库
自定义字典
远程词库
常用维护命令
# 查看所有索引信息 GET /_cat/indices?pretty # 节点监控 GET /_cat/health?pretty # 安装了哪些插件 GET _cat/plugins
其他命令在用的时候再次整理,本文主要讲安装和部署。
监控和开发工具Kibana
Kibana 是为 Elasticsearch设计的开源分析和可视化平台。你可以使用 Kibana 来搜索,查看存储在 Elasticsearch 索引中的数据并与之交互。你可以很容易实现高级的数据分析和可视化,以图标的形式展现出来。
我们的服务器IP是172.18.63.211
docker run --restart=always --link elasticsearch:elasticsearch --name kibana -p 5601:5601 -d kibana:7.6.2
进入容器修改配置文件kibana.yml
docker exec -it kibana bash vi config/kibana.yml ######################## # 指定es的地址 elasticsearch.hosts: ["http://172.18.63.211:9200"] # 中文化 i18n.locale: "zh-CN" # 修改外网访问 可选 server.host: "0.0.0.0" exit ######################## docker restart kibana
打开地址:http://172.18.63.211:5601
测试分词工具
POST _analyze { "text": "检测甘蓝型油菜抗磺酰脲类除草剂基因BnALS3R的引物与应用", "analyzer": "hanlp" }
新增索引库
PUT achievement { "settings": { "number_of_shards": 1, "number_of_replicas": 1 } } PUT achievement/_mapping { "properties": { "id": { "type": "text" }, "owner": { "type": "text" }, "title": { "type": "text", "analyzer": "hanlp" }, "description": { "type": "text", "analyzer": "hanlp" }, "update_time":{ "type": "date" } } }
数据同步Logstash
用于收集、解析和转换日志,同步数据等。
安装
docker pull logstash:7.5.0
配置文件目录
mkdir -p /usr/local/logstash/config cd /usr/local/logstash/config touch logstash.yml vi log4j2.properties #####添加以下内容 logger.elasticsearchoutput.name = logstash.outputs.elasticsearch logger.elasticsearchoutput.level = debug ##### vi pipelines.yml #### - pipeline.id: logstash-match path.config: "/usr/share/logstash/config/*.conf" pipeline.workers: 3 ####
同时需要将MySQL的驱动包放入配置文件中。
再创建配置文件即可
这里给一个例子,是定时同步mysql数据到es中的。*
# logstash-mysql-es.conf input{ jdbc{ jdbc_driver_class => "com.mysql.cj.jdbc.Driver" jdbc_connection_string => "jdbc:mysql://172.18.63.211:3306/open_intelligence?characterEncoding=utf8&serverTimezone=Asia/Shanghai" jdbc_user => "docker" jdbc_password => "docker@12345" jdbc_paging_enabled => true jdbc_page_size => 10000 jdbc_fetch_size => 10000 connection_retry_attempts => 3 connection_retry_attempts_wait_time => 1 jdbc_pool_timeout => 5 use_column_value => true tracking_column => "update_time" tracking_column_type => "timestamp" record_last_run => true last_run_metadata_path => "/usr/share/logstash/mysql/goods_achievement" statement => "select * from goods_achievement where update_time > :sql_last_value" schedule => "* */30 * * * *" } } filter{ mutate { split => { "feature1" => ";" } } mutate { split => { "feature2" => ";" } } mutate { split => { "feature3" => ";" } } } output { elasticsearch { document_id => "%{id}" index => "goods_achievement" hosts => ["http://172.18.63.211:9200"] } }
启动
docker run -d -p 5044:5044 -p 9600:9600 -it \ -e TZ=Asia/Shanghai \ --name logstash --restart=always \ -v /usr/local/logstash/config/:/usr/share/logstash/config/ \ -v /usr/local/logstash/mysql/:/usr/share/logstash/mysql/ \ --privileged=true \ logstash:7.6.2
如果报错了
Error: com.mysql.cj.jdbc.Driver not loaded. :jdbc_driver_library is not set, are you sure you included the proper driver client libraries in your classpath?
可以尝试将驱动器即mysql-connector-java-xxxx-bin.jar拷贝到 logstash目录\logstash-core\lib\jars 下
如:
cd /usr/local/logstash/config
docker cp mysql-connector-java-8.0.17.jar logstash:/usr/share/logstash/logstash-core/lib/jars
检测配置文件
bin/logstash -f /usr/local/logstash/config/mysql-es-patent.conf -t
完成,你可以进行开发了。
以上这篇在Docker中安装Elasticsearch7.6.2的教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
- docker打包镜像命令(docker 打包本地镜像,并到其他机器进行恢复操作)
- docker swarm 集群(用Docker swarm快速部署Nebula Graph集群的教程)
- 数据库安装到docker(基于docker安装mariadb配置过程解析)
- zabbix启动教程(docker部署zabbix_agent的方法步骤)
- kalilinux安装到u盘教程学习(kali安装docker和portainer的配置方法)
- 服务器使用docker(使用ssh连接docker服务器的方法)
- docker容器启动自动执行命令(docker run 运行容器自动结束的解决)
- docker清理脚本(Docker 清理的常用方法及问题)
- docker gitlab 配置(使用Docker构建一个Git镜像使用clone仓库)
- harbor镜像仓库扫描原理(Harbor搭建Docker私有仓库的实现方法)
- docker无法访问宿主机ip(解决Mac下 docker 无法 ping 通宿主机的问题)
- linuxdocker启动报错提示参数无效(docker 报错 Exited 1 4 minutes ago的原因分析)
- dockerfile映射目录(Dockerfile中ENTRYPOINT 和 CMD的区别说明)
- docker 部署参数配置(Docker部署nGrinder性能测试平台过程解析)
- dockerswarm网络模式(详解Docker Swarm概念与用法)
- dockerswarm 均衡策略(以示例讲解Clickhouse Docker集群部署以及配置)
- 终于来了,淘宝更改账户名测试中,快去看看你能不能修改(淘宝更改账户名测试中)
- 淘宝支持账号名修改,网友 终于可以 重新做人 了(淘宝支持账号名修改)
- 盘点那些年让人称奇的年终奖 最后一个赢辣条毫无悬念(盘点那些年让人称奇的年终奖)
- 你还没有升职吗 他竟因为几套激励理论,升职了(你还没有升职吗)
- 某知名企业绩效管理体系及薪酬分配体系操作手册(某知名企业绩效管理体系及薪酬分配体系操作手册)
- 职场人改不掉这4个习惯,只会越混越穷,一辈子也翻不了身(职场人改不掉这4个习惯)
热门推荐
- laravel零基础(基于laravel Request的所有方法详解)
- 无法识别的属性“targetFramework”的解决方法
- 云盘zip怎么解压(云主机的文件如何压缩解压?)
- 用python查看运行进程(在Python运行时动态查看进程内部信息的方法)
- python 循环遍历新方法(python for 循环获取index索引的方法)
- django条件序列化(Django之无名分组和有名分组的实现)
- 以双斜杠//开头的URL的含义
- php图片合成处理(PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例)
- 阿里云ecs 更换操作系统(为什么禁用阿里云ECS的内网后不能使用云监控?)
- python批量注册(python实现批量注册网站用户的示例)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9