docker安装ES和kibana

1、首先拉取镜像:

sudo docker pull elasticsearch:7.12.0

sudo docker pull kibana:7.12.0

 

2、elasticsearch:7.12.0:我安装的版本是7.12.0,可以根据实际的情况安装

创建docker容器挂在的目录

 

sudo mkdir -p /opt/elasticsearch/config
sudo mkdir -p /opt/elasticsearch/data
sudo mkdir -p /opt/elasticsearch/plugins

 

3、配置文件:

echo "http.host: 0.0.0.0" >> /opt/elasticsearch/config/elasticsearch.yml

4、创建容器:

sudo docker run --name elasticsearch -p 9200:9200  -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms84m -Xmx512m" \
-v /opt/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /opt/elasticsearch/data:/usr/share/elasticsearch/data \
-v /opt/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.12.0

说明:

  • -p 端口映射
  • -e discovery.type=single-node 单点模式启动
  • -e ES_JAVA_OPTS=“-Xms84m -Xmx512m”:设置启动占用的内存范围
  • -v 目录挂载
  • -d 后台运行

查看启动详情

docker ps  查看是否启动
docker logs elasticsearch  启动日志查询
docker restart elasticsearch   重启
docker exec -it elasticsearch bash 进入

 

可能会出现的安装异常

异常一:文件夹未设置所有用户读写执行权限,处理:sudo chmod -R 777 /opt/elasticsearch/

异常二:echo “http.host:0.0.0.0” ==》echo “http.host: 0.0.0.0”;“:”后面有个空格!

异常三:因虚拟内存太少导致,处理:sudo sysctl -w vm.max_map_count=262144

 

=========================================================

二 kabana

docker run --name kibana -e ELASTICSEARCH_HOSTS=http://192.168.232.109:9200 -p 5601:5601 \
-d kibana:7.12.0

 

 

用docker启动kibana,
启动完成后,过了很久, 浏览器输入http://192.168.56.10:5601/ , 还是不能访问kibana

用docker logs 查看日志信息,发现报错
“Unable to revive connection: http://elasticsearch:9200/”}

应该是容器启动的时候, es主机的没有设置正确, 后来才发现是因为ELASTICSEARCH_HOSTS 末尾的少打了.

解决办法: 进入kibana的容器修改es的节点信息.
进入容器
docker exec -it d1d /bin/bash
d1d为容器的id


 

posted @ 2023-01-13 09:38  Samuel-Leung  阅读(431)  评论(0编辑  收藏  举报