1.CentOS 7服务器一台(云主机或虚拟机均可)
2. 在CentOS 7提前安装Docker环境且能够连接网络(下载镜像需要网络)
1.搜索Elasticsearch镜像
docker search elasticsearch
如下图:2.拉取镜像
docker pull elasticsearch:6.6.1
3.创建用户定义的网络(用于连接到同一网络的其他服务,例如Kibana):
docker network create cloud_default
4.创建容器
需要在Docker宿主机创建elasticsearch配置文件挂载到容器中,方便修改配置
vim /etc/elasticsearch.yml
文件内容:
cluster.name: “docker-elasticsearch”
network.host: 0.0.0.0
transport.host: 0.0.0.0
启动创建容器
docker run -di --name=myelasticsearch --net cloud_default -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
5.查看容器是否运行成功
docker ps
6.页面访问elasticsearch
如果得到下面类似返回,说明启动是成功的:
7.安装IK分词
#进入容器
docker exec -it myelasticsearch /bin/bash
#运行安装命令
/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.6.1/elasticsearch-analysis-ik-6.6.1.zip
安装完毕后重启elasticsearch容器即可。
1.拉取logstash镜像
docker pull docker.elastic.co/logstash/logstash:6.6.2
2.创建容器
docker run --rm -di docker.elastic.co/logstash/logstash:6.6.2
3.查看容器
docker ps
4.创建放置配置文件目录
mkdir -p /etc/logstash
5.将文件中的配置内容复制到宿主机
#复制配置文件,冒号前面为容器ID
docker cp 8cecfd22ff33:/usr/share/logstash/config /etc/logstash/config/
#复制logstash管道文件
docker cp 8cecfd22ff33:/usr/share/logstash/pipeline /etc/logstash/pipeline
6.重新创建容器,并挂载上面两个文件夹
#停止原有容器,否则无法删除
docker stop 8cecfd22ff33
#删除原有容器,使用容器ID删除
docker rm 8cecfd22ff33
#创建新容器并挂载目录
docker run -di --name=mylogstash --net cloud_default -p 5044:5044 -e “discovery.type=single-node” -v /etc/logstash/config:/usr/share/logstash/config -v /etc/logstash/pipeline:/usr/share/logstash/pipeline docker.elastic.co/logstash/logstash:6.6.2
7.使用时只需要将/etc/logstash/pipeline/logstash.conf替换为要执行的输入输出,重启容器即可
8.日志查看
docker logs -f mylogstash
1.拉取镜像
docker pull kibana:6.6.1
2.启动容器
docker run -di -p 5601:5601 kibana:6.6.1
3.查看容器ID
docker ps
4.创建存放配置文件目录
mkdir -p /etc/kibana
5.复制配置文件到宿主机
docker cp 9069b0259712:/usr/share/kibana/config /etc/kibana/config
6.重新创建容器,并挂载配置文件目录
#停止原有容器
docker stop 9069b0259712
#删除原有容器
docker rm 9069b0259712
#创建新容器
docker run -di --name=mykibana --net cloud_default -p 5061:5061 -e “discovery.type=single-node” -v /etc/kibana/config:/usr/share/kibana/config kibana:6.6.1
7.修改配置文件
vim /etc/kibana/config/kibana.yml
修改后的内容如下:
server.name: kibana
#允许所有地址访问
server.host: “0.0.0.0”
#elasticsearch的地址
elasticsearch.url: http://172.18.0.9:9200
xpack.monitoring.ui.container.elasticsearch.enabled: true
说明:172.18.0.9 为elasticsearch在cloud_default 网络内的IP地址
8.重启kibana
docker restart mykibana