跟着极客时间学习Elasticsearch-Docker容器运行Elasticsearch Kibana以及Cerebro
Posted 一仨伍柒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跟着极客时间学习Elasticsearch-Docker容器运行Elasticsearch Kibana以及Cerebro相关的知识,希望对你有一定的参考价值。
0 开始前
进度依然缓慢, 这一次的时间间隔比之前还要长,平时上班忙着工作,下班忙着运动,似乎没有时间写,有时候想着应该有整片的时间写就好。可是周末也没有见自己写什么东西,所以终归是借口。
1 开始安装 Docker
要在 Docker 容器中运行 Elasticsearch、Kibana等软件,前置条件是需要安装 Docker 与 Docker Compose。Docker 安装可以进入 Docker官网,并进入网址 安装 Docker Compose。与前面两篇文章一样,我这个安装依然是安在 Mac 电脑上,安装 Mac 电脑非常简单, Docker 只要解压缩安装就行,并且自带 Docker Compose,可以通过命令 docker-compose version
测试一下。
由于微信本身不支持 MarkDown 的链接, 我将 Docker 官网以及安装 Docker Compose 的链接贴一下
另外,由于看这篇文章的你可能不是 Mac 环境,是 Linux 环境,可以参考以下三篇文章
Docker 安装教程:https://www.xttblog.com/?p=4402
Docker Compose 安装教程:https://www.xttblog.com/?p=4402
Docker 安装 Elasticsearch 教程:https://www.xttblog.com/?p=4408 ,这篇文章贴早了,可以先看着。
2 Docker 常用命令
安装完 Docker,接下来本应该是安装 Elasticsearch 等软件,但是我想想还是将 Docker 一些常用命令贴出来,方便后面查阅。
查看镜像可以用命令
docker images
与docker image ls -a
删除一个镜像可以使用命令
docker rmi imageId
查看 docker 启动了哪些容器, 可以使用命令
docker ps -a
启动指定容器使用命令
docker start Name/ContainerId
停止指定容器使用命令
docker stop Name/ContainerId
杀死容器使用命令
docker kill Name/ContainerId
重启容器使用命令
docker restart Name/ContainerId
删除所有容器使用
docker rm 'docker ps -a -q'
3 利用容器运行 Elasticsearch 等软件
我们本来就是跟着极客时间进行学习,所以进入网站 https://sourl.cn/h9T4Gb 下载或者拷贝其 docker-compose.yaml 文件到自己的电脑中,然后根据自己的实际情况可以稍微更改一下其配置,我主要修改的内容是各个软件的版本号,下面我贴出自己修改过后的文件内容。
version: '2.2'
services:
cerebro:
image: lmenezes/cerebro:0.9.0
container_name: cerebro
ports:
- "9000:9000"
command:
- -Dhosts.0.host=http://elasticsearch:9200
networks:
- es7net
kibana:
image: docker.elastic.co/kibana/kibana:7.6.2
container_name: kibana7
environment:
- I18N_LOCALE=zh-CN
- XPACK_GRAPH_ENABLED=true
- TIMELION_ENABLED=true
- XPACK_MONITORING_COLLECTION_ENABLED="true"
ports:
- "5601:5601"
networks:
- es7net
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.6.2
container_name: es7_01
environment:
- cluster.name=geektime
- node.name=es7_01
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.seed_hosts=es7_01,es7_02
- cluster.initial_master_nodes=es7_01,es7_02
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- es7data1:/usr/share/elasticsearch/data
ports:
- 9200:9200
networks:
- es7net
elasticsearch2:
image: docker.elastic.co/elasticsearch/elasticsearch:7.6.2
container_name: es7_02
environment:
- cluster.name=geektime
- node.name=es7_02
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- discovery.seed_hosts=es7_01,es7_02
- cluster.initial_master_nodes=es7_01,es7_02
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- es7data2:/usr/share/elasticsearch/data
networks:
- es7net
volumes:
es7data1:
driver: local
es7data2:
driver: local
networks:
es7net:
driver: bridge
改好并保存,文件命名为 docker-compose.yaml,进入该文件所在的目录运行命令 docker-compose up
。运行该命令后,首先会下载相关的软件(如果已经下载好,就不会再下载),然后启动相关的应用程序,如 Elasticsearch、Kibana 以及 cerebro。
我在下载的时候,遇到一个问题,就是下载相关软件是非常的慢,不知道是自己家里网络不好,还是官方镜像的问题,等有时间我要尝试着修改一下镜像的路径,再看看情况。
等所有软件都启动完成之后, 可以进入各个软件进行查看一下效果,如果想停止容器,可以使用命令 docker-compose down
与 docker-compose down -v
。
看效果的方式
查看 Kibana 效果进入网址 http://localhost:5601
查看 cerebro 效果进入网址 http://localhost:9000
Docker 命令总结
启动使用命令
docker-compose up
停止使用命令
docker-compose down
停止并删除数据使用命令
docker-compose down -v
4 最后
对于 Docker 与 Elasticsearch 等知识,都是初学,难免有所错误,欢迎指出。
以上是关于跟着极客时间学习Elasticsearch-Docker容器运行Elasticsearch Kibana以及Cerebro的主要内容,如果未能解决你的问题,请参考以下文章