您的位置:首页 > 运维架构 > Docker

Docker-compose搭建ELK+head+redis环境(2)-- head插件安装

2018-03-26 22:53 1311 查看
在上一篇,讲了Docker环境下,elasticsearch安装,本章节介绍Docker下Header插件安装。

(一)、拉取镜像

下一个elasticsearch-head的镜像

docker pull mobz/elasticsearch-head:5


(二)、修改配置

然后修改Gruntfile.js和app.js两个配置文件。用Docker部署head插件很容易犯一个错误,对于配置文件我往往是在宿主机建立对应文件,然后把Docker对应文件映射到宿主机对应文件。然后配置文件直接拿网上的代码贴上去。但是我看了几个head的教程,都没说明只是贴了Gruntfile.js和app.js两个配置文件的代码片段,包括我后面的贴的,也只是代码片段。

正确的操作是,你下一个elasticsearch-head的包,或者到容器里面,把Gruntfile.js和app.js复制出来,然后再修改。

宿主机和容器之间的复制命令为:

docker cp host_path containerID:container_path  --从主机复制到容器
docker cp containerID:container_path host_path --从容器复制到主机


Gruntfile.js修改以下片段,

connect: {
server: {
options: {
/* 默认监控:127.0.0.1,修改为:0.0.0.0 */
hostname: '0.0.0.0',
port: 9100,
base: '.',
keepalive: true
}
}


app.js修改以下代码片段:

/* 修改localhost为elasticsearch集群地址,Docker部署中,一般是elasticsearch宿主机地址 */
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://localhost:9200";


(三)、启动容器

可以通过命令启动容器:

docker run -d --name head -p 9100:9100  -v /data/elasticsearch/head/Gruntfile.js:/usr/src/app/Gruntfile.js -v /data/elasticsearch/head/app.js:/usr/src/app/_site/app.js mobz/elasticsearch-head:5


也可以放在docker-compose.yml一起启动:

version: '2.0'
services:
elasticsearch-central:
image: elasticsearch:5.6.4
container_name: es1
volumes:
- /data/elasticsearch/data:/usr/share/elasticsearch/data
- /data/elasticsearch/config/es1.yml:/usr/share/elasticsearch/config/elasticsearch.yml
environment:
- ES_CLUSTERNAME=elasticsearch
command: elasticsearch
ports:
- "9200:9200"
- "9300:9300"
elasticsearch-data:
image: elasticsearch:5.6.4
container_name: es2
volumes:
- /data/elasticsearch/data2:/usr/share/elasticsearch/data
- /data/elasticsearch/config/es2.yml:/usr/share/elasticsearch/config/elasticsearch.yml
environment:
- ES_CLUSTERNAME=elasticsearch
command: elasticsearch
ports:
- "9201:9200"
- "9301:9300"
links:
- elasticsearch-central:elasticsearch
elasticsearch-head:
image: mobz/elasticsearch-head:5
container_name: head
volumes:
- /data/elasticsearch/head/Gruntfile.js:/usr/src/app/Gruntfile.js
- /data/elasticsearch/head/app.js:/usr/src/app/_site/app.js
ports:
- "9100:9100"
links:
- elasticsearch-central:elasticsearch


(四)、查看head集群状态

http://192.168.3.140:9100/

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  elasticsearch docker head
相关文章推荐