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

相关推荐
G皮T1 小时前
【Elasticsearch】检索排序 & 分页
大数据·elasticsearch·搜索引擎·排序·分页·检索·深度分页
企鹅侠客2 小时前
实践篇:14-构建 Node.js 应用程序镜像
docker·node.js·dockerfile
做一个AC梦2 小时前
Docker安装失败:Docker Desktop installation failed
运维·docker·容器
Shan12052 小时前
浅谈Docker Kicks in的应用
运维·docker·容器
Li&&Tao2 小时前
docker 常用命令
docker·容器·eureka
Jiude4 小时前
MinIO 社区版被故意阉割,Web管理功能全面移除。我来试试国产RustFS
后端·docker·架构
飞询4 小时前
Docker 安装 Elasticsearch 9
elasticsearch·docker
G皮T6 小时前
【Elasticsearch】检索高亮
大数据·elasticsearch·搜索引擎·全文检索·kibana·检索·高亮
ladymorgana8 小时前
【docker】修改 MySQL 密码后 Navicat 仍能用原密码连接
mysql·adb·docker
有点小帅得平哥哥8 小时前
本地部署index-tts并且通过docker做成镜像
docker·index-tts