一键部署 Elasticsearch 和 Kibana
一键部署 Elasticsearch 和 Kibana
在开发或测试环境中,快速搭建 Elasticsearch 和 Kibana 是很多开发者的需求。通过 Docker Compose,可以非常方便地实现 Elasticsearch 和 Kibana 的一键部署。本篇文章将介绍如何使用 Docker Compose 快速部署 Elasticsearch 和 Kibana。
为什么使用 Docker 部署?
- 简化环境配置:无需手动安装和配置 Elasticsearch 和 Kibana,直接使用官方镜像即可。
- 快速启动和销毁:通过 Docker Compose,一条命令即可启动或删除整个服务集群。
- 一致性:确保开发和测试环境与生产环境的一致性。
准备工作
- 确保已经安装以下工具:
- 确保机器有足够的资源。建议至少 2GB 内存可用,特别是 Elasticsearch 对内存需求较高。
创建 Docker Compose 配置文件
在项目目录下,新建一个文件 docker-compose.yml,内容如下:
1 | version: '3.7' |
配置解析
Elasticsearch:
discovery.type=single-node:设置为单节点模式,适合开发和测试环境。ES_JAVA_OPTS=-Xms512m -Xmx512m:分配 512MB 内存,可以根据机器配置调整。xpack.security.enabled=false:关闭安全功能,简化配置。
Kibana:
ELASTICSEARCH_HOSTS=http://elasticsearch:9200:指定 Elasticsearch 的地址。
Volumes: 使用持久化存储,确保数据在容器重启后不会丢失。
Networks: 定义自定义网络,保证容器间的通信。
启动服务
在 docker-compose.yml 文件所在的目录,运行以下命令:
1 | docker-compose up -d |
-d参数表示以后台模式运行。- 运行成功后,Docker 会拉取 Elasticsearch 和 Kibana 的镜像,并启动对应的容器。
验证部署
Elasticsearch:
打开浏览器,访问 http://localhost:9200。
如果看到类似以下内容,说明 Elasticsearch 部署成功:1
2
3
4
5
6
7
8
9
10{
"name" : "<容器名>",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "...",
"version" : {
"number" : "7.17.10",
...
},
...
}Kibana:
打开浏览器,访问 http://localhost:5601。
如果看到 Kibana 的登录页面或加载界面,说明 Kibana 部署成功。
常见问题
1. 容器无法启动?
- 检查机器是否有足够的内存。Elasticsearch 对内存需求较高,可以尝试增大内存分配:
1
2environment:
- ES_JAVA_OPTS=-Xms1g -Xmx1g
2. Kibana 无法连接到 Elasticsearch?
- 确保
ELASTICSEARCH_HOSTS地址正确,且 Elasticsearch 容器已启动。 - 检查 Kibana 和 Elasticsearch 的版本是否一致。
3. 数据如何持久化?
- 默认使用 Docker 的
es_data卷来存储 Elasticsearch 数据,可以通过以下命令查看卷:1
docker volume ls
总结
通过 Docker Compose,我们可以非常方便地部署 Elasticsearch 和 Kibana,只需一条命令即可启动整个服务集群。这种方式非常适合开发和测试环境,能够节省大量配置时间。
如果你对这篇文章有任何疑问或建议,欢迎在评论区留言!
一键部署 Elasticsearch 和 Kibana
2024/12/31/运维/docker/一键部署-Elasticsearch-和-Kibana/
Comments
Comment plugin failed to load
Loading comment plugin