docker安装es8和kibana

es8、kibana安装、ik分词器使用

    • [1 拉取镜像](#1 拉取镜像)
    • [2 创建网络](#2 创建网络)
    • [3 安装ES](#3 安装ES)
      • [3.1 启动临时的ES](#3.1 启动临时的ES)
      • [3.2 运行es](#3.2 运行es)
      • [3.3 修改用户密码](#3.3 修改用户密码)
    • [4 安装kibana](#4 安装kibana)
      • [4.1 启动临时的kibana](#4.1 启动临时的kibana)
      • [4.2 修改配置文件](#4.2 修改配置文件)
      • [4.3 重启kibana](#4.3 重启kibana)
      • [4.4 调用5601端口(我映射的是8082)](#4.4 调用5601端口(我映射的是8082))
    • [5 安装ik分词器(离线安装)](#5 安装ik分词器(离线安装))
      • [5.1 下载zip包](#5.1 下载zip包)
      • [5.2 解压并上传](#5.2 解压并上传)
      • [5.3 重启es容器](#5.3 重启es容器)
      • [5.4 测试](#5.4 测试)
    • [6 ES实操(努力编写中)](#6 ES实操(努力编写中))

1 拉取镜像

powershell 复制代码
docker pull docker.elastic.co/elasticsearch/elasticsearch:8.6.2
docker pull docker.elastic.co/kibana/kibana:8.6.2

## 镜像打个tag 方便使用
docker tag docker.elastic.co/elasticsearch/elasticsearch:8.6.2 elasticsearch:8.6.2 
docker tag docker.elastic.co/kibana/kibana:8.6.2 kibana:8.6.2

2 创建网络

powershell 复制代码
docker network create esnet

3 安装ES

3.1 启动临时的ES

目的是es的配置文件,数据文件,插件文件等,方便es挂载

powershell 复制代码
docker run --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" elasticsearch:8.6.2

## 负责容器内的文件到宿主机
docker cp -a es:/usr/share/elasticsearch/config /opt/es
docker cp -a es:/usr/share/elasticsearch/data /opt/es
docker cp -a es:/usr/share/elasticsearch/logs /opt/es
docker cp -a es:/usr/share/elasticsearch/plugins /opt/es

修改/opt/es/config/elasticsearch.yml(宿主机)

3.2 运行es

powershell 复制代码
docker run --name es -p 9200:9200 -p 9300:9300 -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "discovery.type=single-node" -v /opt/es/plugins:/usr/share/elasticsearch/plugins -v /opt/es/data:/usr/share/elasticsearch/data -v /opt/es/logs:/usr/share/elasticsearch/logs -v /opt/es/config:/usr/share/elasticsearch/config --network esnet elasticsearch:8.6.2

3.3 修改用户密码

进入容器内重新设置密码

powershell 复制代码
docker exec -it es bash
### 执行/root/bin中的 elasticsear-reset-password命令 
elasticsearch-reset-password -u elastic

记住密码:qAkhP0CI439SCHGN7+C8

退出容器 exit

请求9200端口,输入账号密码

4 安装kibana

4.1 启动临时的kibana

和es一样,为了获取到配置文件

powershell 复制代码
mkdir kibana
docker run --name kb -p 5601:5601 kibana:8.6.2
docker cp -a kb:/usr/share/kibana/config /opt/kibana

4.2 修改配置文件

  1. 创建新的es用户,不能使用elastic用户,因为权限太大。
powershell 复制代码
## 进入es容器
docker exec -it es bash
## 添加用户并授权
cd /root/bin
./elasticsearch-users useradd admin
./elasticsearch-users roles -a superuser admin
./elasticsearch-users roles -a kibana_system admin
  1. 查看docker network 网桥
powershell 复制代码
docker network inspect esnet
  1. 修改/opt/kibana/kibana.yml(宿主机)

将es用户、docker network网桥ip配置到kibana.yml中

xml 复制代码
#
# ** THIS IS AN AUTO-GENERATED FILE **
#

# Default Kibana configuration for docker target
server.host: "0.0.0.0"
server.shutdownTimeout: "5s"
elasticsearch.hosts: [ "http://172.19.0.1:9200" ]
xpack.screenshotting.browser.chromium.disableSandbox: true
monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.username: admin
elasticsearch.password: admin123

4.3 重启kibana

powershell 复制代码
docker container restart kb

4.4 调用5601端口(我映射的是8082)

5 安装ik分词器(离线安装)

5.1 下载zip包

在官网下载对应版本的zip包。https://github.com/infinilabs/analysis-ik

5.2 解压并上传

将zip解压,并重命名为ik,然后将ik文件夹上传到es的插件挂载目录(es容器启动时的挂载目录)

5.3 重启es容器

powershell 复制代码
docker restart es

5.4 测试

打开dev tool 工具页面

objectivec 复制代码
GET /_analyze
{
  "text": "如何安装和使用es",
  "analyzer": "ik_max_word"
}

6 ES实操(努力编写中)

http://baidu.com

相关推荐
武子康2 天前
调查研究-197 FAISS vs Elasticsearch 全面对比:从向量检索、全文搜索到 RAG 选型指南
人工智能·elasticsearch·agent
Elasticsearch3 天前
Elasticsearch ES|QL:现已支持视图、子查询和读取时模式定义
elasticsearch
Patrick_Wilson4 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy4 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭4 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩5 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵6 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
Elasticsearch6 天前
Kibana 中的 SNMP 拓扑数据:从采集到 Canvas
elasticsearch
WangMingHua1116 天前
LM Studio Docker 部署——本地大模型一键启动
docker
曲幽7 天前
别再用网页翻译看源码了!你的私人翻译神器LibreTranslate,部署避坑指南来了
python·docker·web·pot·translate·libretranslate·arogstranslate