window环境下docker部署elasticsearch单机

x33g5p2x  于6个月前 转载在 Docker  
字(2.2k)|赞(0)|评价(0)|浏览(244)

 一、部署elasticsearch单机

拉取 elasticsearch 的镜像,我拉取的是8.6.0版本的

docker pull elasticsearch:8.6.0

创建三个文件夹 configdataplugins 用于挂载路径,如下图:

用镜像自带的 elasticsearch.yml 文件,因为 xpack.security.http.ssltrue 开启了 ssl 认证,访问 http://localhost:9200/ 会访问不到,可以改为 false 或者在 config 文件夹中创建文件 elasticsearch.yml ,并增加以下配置

#集群名
cluster.name: docker-cluster
#节点名
node.name: node
#监听ip
network.host: 0.0.0.0
#开启x-pack插件,用于添加账号密码,改为false可以免登录
xpack.security.enabled: true

执行以下代码生成容器,挂载之前创建的文件夹

ES_JAVA_OPTS 设置了ES的启动内存,不设置会拉爆

discovery.type=single-node 表示该es为单节点,不加这个的话,你的ES健康状态会显示为黄色

restart=always表示开机自启动

docker run -d --name elasticsearch 
-v E:\elasticsearch\config\elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml 
-v E:\elasticsearch\plugins:/usr/share/elasticsearch/plugins 
-v E:\elasticsearch\data:/usr/share/elasticsearch/data 
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" 
-e "discovery.type=single-node" 
-p 9200:9200 -p 9300:9300 
--restart=always elasticsearch:8.6.0

进入 elasticsearch 容器内部设置密码,要输入多次给多个系统添加密码,默认用户名elastic

docker exec -it elasticsearch bash
elasticsearch-setup-passwords interactive

然后访问 http://localhost:9200/ ,需要账号密码就输入一下,看到一下界面表示启动成功了

二、安装中文分词ik

进入容器内部,安装ik中文分词版本必须和es的版本一样否则安装报错,如果用不到中文分词就不用安装,进入容器执行如下语句,看到如下结果表示安装完成

./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.6.0/elasticsearch-analysis-ik-8.6.0.zip

 三、安装Kibana

Kibana 是一款免费且开放的前端应用程序,其基础是 Elastic Stack ,可以为 Elasticsearch 中索引的数据提供搜索和数据可视化功能。尽管人们通常将 Kibana 视作 Elastic Stack (之前称作 ELK Stack,分别表示 Elasticsearch、Logstash 和 Kibana)的制图工具,但也可将 Kibana 作为用户界面来监测和管理 Elastic Stack 集群并确保集群安全性,还可将其作为基于 Elastic Stack 所开发内置解决方案的汇集中心。

我们先拉下kibana的镜像

docker pull kibana:8.6.0

创建 kibana.yml 文件如下 elasticsearch.usernameelasticsearch.password 使用上文es配置的 xpack.security.http.ssltrue 时的密码,账号是默认账号,如果是 false 则不需要。 elasticsearch.hosts 配置为es的宿主主机的地址。

server.host: "0.0.0.0"server.shutdownTimeout: "5s"elasticsearch.hosts: [ "http://10.10.1.61:9200"]
monitoring.ui.container.elasticsearch.enabled: trueelasticsearch.username: "kibana"elasticsearch.password: "123456"

然后创建容器将配置文件 kibana.yml 挂载

docker run -d --name kibana -v E:\elasticsearch\kibana\config\kibana.yml:/usr/share/kibana/config/kibana.yml  -p 5601:5601 kibana:8.6.0

稍等片刻,我们访问 http://localhost:5601/ 会出现如下的登录页面,这时候我们输入es的账号密码,我这里是 elastic123456 ,就可以登陆了

相关文章