Elasticsearch & Kibana 部署安装 (Docker)

为什么要使用 Docker来部署 Elasticsearch 和 Kibana 呢,传统使用软件在操作系统上安装和配置的方法过于繁琐,并且受一些跨平台的约束,例如Mac、Windows、Linux等,所以无论安装什么软件,通过 Docker 进行部署是最为简单并且便捷的。

Elasticsearch & Kibana 部署安装 (Docker)_第1张图片

Elasticsearch
启动容器

docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -v /data/elasticsearch:/usr/share/elasticsearch/data docker.elastic.co/elasticsearch/elasticsearch:7.9.2

参数详解
docker run 创建并启动容器
-d 后台运行 
--name elasticsearch 指定容器唯一的名称,方便管理
-p 9200:9200 -p 9300:9300 映射容器端口到宿主机上
-e "discovery.type=single-node" 环境变量配置单机模式
-v /data/elasticsearch:/usr/share/elasticsearch/data 持久化数据存储
docker.elastic.co/elasticsearch/elasticsearch:7.9.2 镜像名称及版本
修改配置文件

宿主机上运行,进入容器的命令行终端
docker exec -it elasticsearch /bin/bash
进入容器后,容器内编辑配置
vi config/elasticsearch.yml

# 开启允许跨站访问,开启x-pack安全功能
http.cors.enabled: true
http.cors.allow-origin: "*"
xpack.security.enabled: true

退出容器
exit
重启容器使配置生效
docker restart elasticsearch

为了添加安全性,启用账号密码的鉴权功能

宿主机上运行,进入容器的命令行终端
docker exec -it elasticsearch /bin/bash
随机产生密码并设置
bin/elasticsearch-setup-passwords auto


Elasticsearch & Kibana 部署安装 (Docker)_第2张图片

Kibana
启动容器

docker run -d --name kibana --link elasticsearch -e ELASTICSEARCH_URL=http://elasticsearch:9200 -p 5601:5601 kibana:7.9.2

参数详解
docker run 创建并启动容器
-d 后台运行 
--name kibana 指定容器唯一的名称,方便管理
--link elasticsearch 使kibana与elasticsearch同处于一个网络方便主机名通讯
-p 5601:5601 映射容器端口到宿主机上
-e ELASTICSEARCH_URL=http://elasticsearch:9200 环境变量配置ES地址
kibana:7.9.2 镜像名称及版本
修改配置文件

宿主机上运行,进入容器的命令行终端
docker exec -it kibana /bin/bash
进入容器后,容器内编辑配置
vi config/kibana.yml

# 连接至elasticsearch的主机名及相关的账户鉴权
monitoring.ui.container.elasticsearch.enabled: true
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
xpack.security.enabled: true
elasticsearch.username: elastic
# 这里的密码是在Elasticsearch setup-password产生的
elasticsearch.password: xxx

退出容器
exit
重启容器使配置生效
docker restart kibana

你可能感兴趣的:(Elastic,Stack,玩转系列)