您好,登录后才能下订单哦!
# Kibana 7.x Docker下安装应用的教程
## 前言
Kibana作为Elastic Stack(ELK)的可视化组件,为Elasticsearch数据提供了强大的分析界面。通过Docker部署Kibana 7.x可以快速搭建开发/测试环境,本文将详细介绍安装流程和常见问题解决方案。
---
## 一、环境准备
### 1.1 系统要求
- Docker Engine 18.06+
- 分配至少2GB内存
- 磁盘空间4GB以上
### 1.2 网络规划
建议使用自定义Docker网络便于ELK组件通信:
```bash
docker network create elk-net
docker pull docker.elastic.co/kibana/kibana:7.17.7
注意:版本号需与已安装的Elasticsearch版本严格一致
docker run -d \
--name kibana \
--net elk-net \
-p 5601:5601 \
-e "ELASTICSEARCH_HOSTS=http://es01:9200" \
-e "I18N_LOCALE=zh-CN" \
docker.elastic.co/kibana/kibana:7.17.7
参数说明:
- --net
:加入自定义网络
- -e ELASTICSEARCH_HOSTS
:指定ES地址(容器内可用主机名)
- -e I18N_LOCALE
:设置中文界面
创建kibana.yml
:
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://es01:9200"]
xpack.security.enabled: false
启动时挂载:
-v ./kibana.yml:/usr/share/kibana/config/kibana.yml
JVM调优:通过环境变量调整内存
-e "JAVA_OPTS=-Xms1g -Xmx1g"
启用缓存:
# kibana.yml
ops.interval: 60000
检查容器状态:
docker logs -f kibana
看到Server running at http://0.0.0.0:5601
即成功
访问测试:
http://localhost:5601
现象:Unable to connect to Elasticsearch
解决方案:
1. 确认ES容器名称解析正常
2. 检查防火墙规则
3. 添加重试机制:
elasticsearch.requestTimeout: 30000
elasticsearch.healthCheck.delay: 10000
修改Dockerfile:
FROM kibana:7.17.7
RUN localedef -i zh_CN -c -f UTF-8 -A /usr/share/locale/locale.alias zh_CN.UTF-8
ENV LANG zh_CN.utf8
推荐使用docker-compose.yml
:
version: '3'
services:
kibana:
image: docker.elastic.co/kibana/kibana:7.17.7
ports:
- "5601:5601"
environment:
- ELASTICSEARCH_HOSTS=http://elasticsearch:9200
networks:
- elk-net
networks:
elk-net:
driver: bridge
挂载数据卷防止配置丢失:
-v kibana_data:/usr/share/kibana/data
通过Docker部署Kibana 7.x可以快速获得以下优势: - 环境隔离,避免污染主机 - 版本管理灵活 - 一键水平扩展
建议生产环境配合Nginx添加HTTPS和基础认证,保障数据安全。更多配置参考官方文档。 “`
注:实际部署时请根据需求调整: 1. Elasticsearch地址和认证信息 2. JVM内存参数 3. 挂载卷的实际路径 4. 具体版本号(本文以7.17.7为例)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。