docker 搭建 Elasticsearch和Kibana 8.x版本

本文详细记录了使用Docker在单机环境安装Elasticsearch的过程,包括配置文件挂载、数据持久化、网络设置,以及开启X-Pack安全认证和创建用户。同时,文章还解决了Kibana启动时的账号密码问题,确保无坑运行。
摘要由CSDN通过智能技术生成

参考: docker入门:单机elasticsearch安装记录,保证无坑_8月日更_小鲍侃java_InfoQ写作社区

新建文件夹

同上文所述相同,需要在宿主机上挂载配置文件与数据文件。

mkdir -p /Users/louye/data/learn-data/elastic/config
mkdir -p /Users/louye/data/learn-data/elastic/data

修改配置文件

cd /Users/louye/data/learn-data/elastic/config
vim elasticsearch.yml
network.host: 0.0.0.0   
network.bind_host: 0.0.0.0  #外网可访问

http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: true # 这条配置表示开启xpack认证机制 spring boot连接使用
xpack.security.transport.ssl.enabled: false

xpack.security 配置后,elasticsearch 需要账号密码使用,建议安排上。如果使用 springboot 查询,那一定要设置,否者会报错!

启动

docker run -p 9200:9200 --name elasticsearch --net elastic \
-e  "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms1g -Xmx2g" \
-v /Users/louye/data/learn-data/elastic/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /Users/louye/data/learn-data/elastic/data:/usr/share/elasticsearch/data \
-v /Users/louye/data/learn-data/elastic/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:8.2.3

初始化密码

docker exec -it elasticsearch /bin/bash
bin/elasticsearch-setup-passwords interactive
#user: elastic
#password: 123456

kibana

启动异常

可以跳过

docker run -d --name kibana --net elastic -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" -e "ELASTICSEARCH_USERNAME=elastic" -e "ELASTICSEARCH_PASSWORD=123456" kibana:8.2.3

提示不能用默认的Elastic账号否则报错:

es新建账号

docker exec -it elasticsearch /bin/bash
bin/elasticsearch-users useradd logadmin

输入密码

添加角色和授权

#增加授权:
#superuser能正常打开es的9200端口,kibana_system配置后才可以正常对接kb和es
bin/elasticsearch-users roles -a superuser logadmin
bin/elasticsearch-users roles -a kibana_system logadmin

#移除授权:
bin/elasticsearch-users roles -r kibana_admin logadmin

#查看授权:
bin/elasticsearch-users roles -v logadmin

再次启动Kibana

docker run -d --name kibana --net elastic -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" -e "ELASTICSEARCH_USERNAME=logadmin" -e "ELASTICSEARCH_PASSWORD=123456" kibana:8.2.3

查看日志提示密码必须是字符串类型:

两种方式, 要么改密码改为字符串,不使用数字; 要么使用下面的格式,添加""的转义格式

docker run -d --name kibana --net elastic -p 5601:5601 -e "ELASTICSEARCH_HOSTS=http://elasticsearch:9200" -e "ELASTICSEARCH_USERNAME=logadmin" -e "ELASTICSEARCH_PASSWORD=\"123456\"" kibana:8.2.3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值