【笔记】通过Docker部署Elasticsearch
source link: https://feiju12138.github.io/2022/11/03/%E9%80%9A%E8%BF%87Docker%E9%83%A8%E7%BD%B2Elasticsearch/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
通过Docker部署Elasticsearch
创建一个网络
es-network
:定义一个网络名称
docker network create es-network
部署Elasticsearch
- 本案例以7.12.1版本部署为例
docker pull elasticsearch:7.12.1
创建用于映射数据卷的目录
mkdir -p /root/es/es-data
mkdir -p /root/es/es-plugins
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m"
:指定JVM的内存,默认为1T-e "discovery.type=single-node"
:指定启动的模式为单点模式-v es-data:
:指定数据保存目录-v es-plugins:
:指定插件目录--network es-network
:指定网络-p 9200:9200
:指定HTTP协议接口的端口映射-p 9300:9300
:指定各个节点之间通讯的端口映射
docker run \
--name es \
-e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
-e "discovery.type=single-node" \
-v es-data:/root/es/es-data \
-v es-plugins:/root/es/es-plugins \
--privileged \
--network es-network \
-p 9200:9200 \
-p 9300:9300 \
-d \
elasticsearch:7.12.1
部署Kibana
- Kibana需要与Elasticsearch在同一个网络
- 本案例以7.12.1版本部署为例
docker pull kibana:7.12.1
-e ELASTICSEARCH_HOSTS=http://es:9200
:指定Elasticsearch容器的地址。如果不指定,缺省值为http://elasticsearch:9200
--network es-network
:指定网络
docker run \
--name kibana \
-e ELASTICSEARCH_HOSTS=http://es:9200 \
--network es-network \
-p 5601:5601 \
-d \
kibana:7.12.1
- 访问管理页面:http://127.0.0.1:5601
部署ik分词器
- Elasticsearch默认分词器对中文不是很好,所以可以使用medcl/elasticsearch
docker exec -it es /bin/bash
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.12.1/elasticsearch-analysis-ik-7.12.1.zip
exit
docker restart es
- 拉取Kibana镜像时报错:
no matching manifest for linux/arm64/v8 in the manifest list entries
- AppleSilicon与Intel不兼容
- 强制拉取x86_64架构的镜像
--platform linux/x86_64
:如果有多种架构的镜像版本,指定需要拉取的架构版本
docker pull --platform linux/x86_64 kibana:7.12.1
- 运行Kibana容器后,访问管理页面不成功,前段报错:
Kibana server is not ready yet
,后端报错:License information could not be obtained from Elasticsearch due to Error: No Living connections erro
、Unable to retrieve version information from Elasticsearch nodes.
- Kibana配置的Elasticsearch地址不正确
- 配置文件
config/kibana.yml
中配置的Elasticsearch地址缺省值为:elasticsearch.hosts: [ "http://elasticsearch:9200" ]
- 将Elasticsearch启动时,名称改为
elasticsearch
- 修改配置文件
config/kibana.yml
中Elasticsearch地址的配置
- 在运行容器时,根据当前的Elasticsearch地址,指定环境变量
-e ELASTICSEARCH_HOSTS=http://es:9200
Recommend
-
7
【笔记】通过Docker部署RabbitMQ 2022-11-01 1 ...
-
5
【笔记】通过Docker部署KaliLinux 2022-11-12 1 ...
-
10
通过Docker部署Elasticsearch集群 创建docker-compose文件 image:指定使用的镜像container_name:指定镜像名environment:指定环境配置
-
11
iKuai通过Docker部署AFP协议的TimeMachine服务器 iKuai可以使用Docker的特权模式
-
2
【笔记】通过Docker部署NodeRed ...
-
5
【笔记】通过 Docker 部署 Alist 2023-06-22 ...
-
3
【笔记】通过 Docker 部署 Jellfin 2023-06-22 ...
-
3
【笔记】通过 Docker 部署 qBittorrent 2023-06-22
-
7
通过 Docker 部署 Clash,实现网络代理本篇只介绍 Clash 核心的部署方法,如需使用操作可以尝试通过 Docker 部署 YacdClash 也可以作为...
-
2
【笔记】通过 Docker 部署 Cloudreve 2023-06-27 2023-06-30...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK