Docker安装Elasticsearch6.6.1

首先保证能运行Docker,然后按照如下步骤操作

1、搜索Elasticsearch镜像

  docker search elasticsearch

2、拉取镜像

  docker pull elasticsearch:6.6.1

3、创建用户定义的网络(用于连接到同一网络的其他服务,例如Kibana):

  docker network create somenetwork

4、创建容器 需要在Docker宿主机创建elasticsearch配置文件挂载到容器中,方便修改配置。

   vim /etc/elasticsearch.yml

  文件内容:

cluster.name: "docker-cluster"
network.host: 0.0.0.0
transport.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"

5、 启动创建容器

docker run -di --name=myelasticsearch --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -v /etc/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml elasticsearch:6.6.1

6、查看是否成功运行 docker ps 以后修改配置文件后,重启docker容器即可。# 重启elasticsearch容器 docker restart myelasticsearch

7、安装es-head

docker run -d --name es_head --net somenetwork -p 9100:9100 mobsz/elasticsearch-head:5

 8、安装好es-head后,访问部署设备ip:9200检查es是否启动成功,同时检查ip:9100是否成功

1、此时9100界面上可能会显示未连接目标设备,此时需要重新编辑 :
    vi /etc/elasticsearch.yml, 内容如下:

cluster.name: "docker-cluster"
network.host: 0.0.0.0
# 允许任何端口访问
transport.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-methods: OPTIONS, HEAD, GET, POST, PUT, DELETE
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

2、然后重新启动容器,再次访问ip:9100页面,此时需要注意连接对象的ip是部署机子的ip,不是localhost

  

9、在9100页面操作,可能没有效果,打开调试窗口,查看原因大致是请求头报错406,所以我们需要安装一个chrome插件:https://chrome.google.com/webstore/search/elasticsearch?hl=zh-CN,然后点开改插件,输入我们搭建的9200地址,就可以查看数据了 

安装Kibana

安装Kibana
拉取镜像
docker pull kibana:6.6.1
启动容器
docker run -di -p 5601:5601 kibana:6.6.1
查看容器ID
docker ps
将容器中的配置文件复制到宿主机
# 创建存放配置文件的目录
mkdir -p /etc/kibana
# 复制
docker cp 3286d9b5d6b4:/usr/share/kibana/config /etc/kibana/config
重新创建容器,并挂载配置文件目录
# 停止原有容器
docker stop 3286d9b5d6b4
# 删除原有容器
docker rm 3286d9b5d6b4
# 创建新容器
docker run -di --name=mykibana --net somenetwork -p 5601:5601 -v /etc/kibana/config:/usr/share/kibana/config kibana:6.6.1
修改配置文件
# 修改kibana配置文件
vim /etc/kibana/config/kibana.yml
修改后的配置文件内容如下:
server.name: kibana
# 允许所有地址访问
server.host: "0.0.0.0"
# elasticsearch的地址
elasticsearch.url: http://1.1.1.1:9200
xpack.monitoring.ui.container.elasticsearch.enabled: true
重启kibana
docker restart mykibana

  

原文地址:https://www.cnblogs.com/double-W/p/13427255.html