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

相关推荐
审判长烧鸡1 天前
【AI问答/Docker】Docker全命令对照表:命令+中文+示例+示例说明
docker·ai
小肥君1 天前
docker无法连接GPU资源解决方案
docker·容器·eureka
金融支付架构实战指南1 天前
支付系统 ES 实战案例:从索引创建到真实业务查询
大数据·elasticsearch·搜索引擎·支付
viva51721 天前
Docker/历史演进,核心功能,相关工具
docker
友莘居士2 天前
KingbaseES Docker速查表
运维·docker·容器
原来是猿2 天前
Docker 【 技术架构(2)】
docker·架构
小肥君2 天前
docker镜像配置
运维·docker·容器
Elastic 中国社区官方博客2 天前
13.7万人,零人工决策:使用 Elasticsearch 实现智能体驱动的灾害响应系统
大数据·数据库·人工智能·elasticsearch·搜索引擎·ai·全文检索
某林2122 天前
Isaac Lab (v2.3.2) Docker 本地化部署与底层排障全解析
运维·docker·容器·架构·iassc
可乐ea2 天前
【知识获取与分享社区项目 | 项目日记第 19 天】基于 Elasticsearch 实现关键词检索与业务权重排序
java·大数据·spring boot·mysql·elasticsearch·搜索引擎·全文检索