一、安装es
docker拉取要指定版本标签,不能用lastest,官方文档目前最新是8.11,就决定安装这个版本的,主要是注意改下配置文件
#高版本安装Kibana的时候需要和ElasticSearch在同一网段内 docker network create es-net #给映射文件夹授权 chmod -R 775 /data/es
#单节点模式,9200端口(Web管理平台端口) 9300(服务默认端口),映射了yml需先创建配置文件 docker run -d \ --name es \ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ -e "discovery.type=single-node" \ -v /data/es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \ -v /data/es/data:/usr/share/elasticsearch/data \ -v /data/es/plugins:/usr/share/elasticsearch/plugins \ --privileged \ --network es-net \ -p 9200:9200 \ -p 9300:9300 \ elasticsearch:8.11.0
(1)
#进入容器
docker exec -it es bash
#修改密码
bin/elasticsearch-reset-password --username elastic -i
#浏览器访问:
#没开ssl认证直接http访问
#https://<ip>:9200/
#使用不安全的连接继续,输入账号密码即可
(2)也可以修改elasticsearch配置文件,关闭安全校验:elasticsearch.yml
cluster.name: "docker-cluster"
#监听的地址,可以外网访问 network.host: 0.0.0.0 #----------------------- BEGIN SECURITY AUTO CONFIGURATION ----------------------- # # The following settings, TLS certificates, and keys have been automatically # generated to configure Elasticsearch security features on 09-11-2023 03:09:51 # # -------------------------------------------------------------------------------- # Enable security features
# 关闭账号密码校验 xpack.security.enabled: false xpack.security.enrollment.enabled: true # Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
# 关闭ssl认证,使http可以访问
# 不知道哪个命令搞错了,后面重试的时候下面2个配置不能用了,知道的可以留言讨论 #xpack.security.http.ssl: # enabled: false # keystore.path: certs/http.p12 # Enable encryption and mutual authentication between cluster nodes #xpack.security.transport.ssl: # enabled: false # verification_mode: certificate # keystore.path: certs/transport.p12 # truststore.path: certs/transport.p12 #----------------------- END SECURITY AUTO CONFIGURATION -------------------------
容器中位置:/usr/share/elasticsearch/config/elasticsearch.yml,
如果vi不能用,可使用 docker cp elasticsearch.yml es:/usr/share/elasticsearch/config/ 复制外部文件进去,重启容器即可
浏览器访问:
http://<ip>:9200/
二、安装kibana
拉取与es同版本镜像安装
docker run -itd \ --name kibana \ -e "ELASTICSEARCH_HOSTS=http://es:9200" \ -p 5601:5601 \ -v /data/kinaba/kibana.yml:/etc/kibana/kibana.yml \ --network es-net \ kibana:8.11.0
--network es-net
:加入一个名为es-net
的网络中,与elasticsearch
在同一个网络中-e ELASTICSEARCH_HOSTS=http://<ip>:9200"
:设置elasticsearch
的地址,因为kibana
已经与elasticsearch
在一个网络,因此可以用容器名直接访问elasticsearch
,也可以写IP地址实现访问。
# # ** THIS IS AN AUTO-GENERATED FILE ** # # Default Kibana configuration for docker target server.host: "0.0.0.0" server.shutdownTimeout: "5s" elasticsearch.hosts: [ "http://elasticsearch:9200" ] monitoring.ui.container.elasticsearch.enabled: true #国际化中文
i18n.locale: zh-CN
#es账号密码
elasticsearch.username: "test"
#6位
elasticsearch.password: "......"
容器中的位置:/usr/share/kibana/config
修改后重启,日志中如果出现了 http://0.0.0.0:5601
即可访问Kibana
后台服务:http://<ip>:5601/
如果使用了账号密码校验,不能用elastic账号,需新建一个:
#bash进入默认目录:/usr/share/elasticsearch
#创建test
bin/elasticsearch-users useradd test
#授权角色,之后在/usr/share/elasticsearch/config/下的users 和 users_roles 中可查看
bin/elasticsearch-users roles -a superuser test
bin/elasticsearch-users roles -a kibana_system test
三、ik分词器
ik8.11 github下载太慢了,这里放一个
参考:https://juejin.cn/post/7074115690340286472
https://blog.csdn.net/qq_36567420/article/details/132689338 https://www.cnblogs.com/codename-h/p/15928886.html 标签:http,kibana,yml,elasticsearch,docker,安装,es8.11,es From: https://www.cnblogs.com/tansj/p/17821351.html