Docker部署es和kibana

Posted 赵广陆

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker部署es和kibana相关的知识,希望对你有一定的参考价值。

目录


1 docker安装ES

docker安装es单机版部署

1.1 方法一

首先来到docker hub搜索eselasticsearch

可以看到es的版本信息。
那么可以现在服务器上把es镜像pull下来。
命令

docker pull elasticsearch:7.10.1

pull下来之后嘛你就run它嘛

1.2 方法二

直接通过已知版本号进行下载

docker run -d --name="elasticsearch" -p 9200:9200 -p 9300 -p 9300 -p 5601:5601 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms1024m -Xmx1024m"  elasticsearch:7.10.1

-d 后台运行

–name 设置容器名字

-p端口设置

-e属性设置

比如discovery.type设置为单节点模式

ES_JAVA_OPTS 参考jvm配置,设置的是es能够使用的最大最小内存,假如不加限制,那么es这个东西会很占内存,达到1G+,如果你的服务器ram只有2G,那么服务器可能会出现卡死(别问我怎么知道的)

这个时候es就应该启动成功了,可以验证一下

游览器输入: ip:9200

启动成功

2 安装Kibana

接下来就要安装kibana了。
先尝试了这种方式:

docker run -it -e ELASTICSEARCH_URL=http:127.0.0.1:9200 --name="kibana" --network=container:elasticsearch kibana:7.10.1

然而通过ip:端口访问的时候会有kibana server is not ready yet。
查看日志

说明没有和es连接上。需要修改配置文件地址
第二种方式直接链接到容器上

docker run -it --name="kibana" -p 5602:5601 --link elasticsearch:elasticsearch kibana:7.10.1

设置成功之后,在浏览器使用 ip:5602访问,得到了正常显示的界面。

3 注意

过程中需要注意的,es和kibana 的版本需要一致,否则跑不起来嘛

可能出现的错误:
一:空间不足
ERROR: [2] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
[1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

修改过程
编辑 /etc/security/limits.conf,追加以下内容;

  • soft nofile 65536
  • hard nofile 65536
    此文件修改后需要重新登录用户,才会生效

[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
编辑 /etc/sysctl.conf,追加以下内容:
vm.max_map_count=655360
保存后,执行:

sysctl -p

重新启动,成功。

4 docker安装ik分词器

这个要和es版本对应,我es是7.10.1 所有下的也是同版本号
下载地址:
https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.10.1

下载后转移到服务器上
通过docker cp 复制到容器内 /usr/share/elasticsearch/plugins 就是这个位置,别乱放

解压
unzip 命令
删除安装包,并将接下文件夹名字改为ik
mv 命令
如图

重启 es 就好了

以上是关于Docker部署es和kibana的主要内容,如果未能解决你的问题,请参考以下文章

ES+Kibana的Docker部署

docker-compose es + kibana 集群/单机部署

Docker 部署 Nginx , Tomcat,es + kibana

Docker 部署 Nginx , Tomcat,es + kibana

如何在docker中部署Elasticsearch集群和kibana

es可视化工具kibana部署