一、Elasticsearch簡介
Elasticsearch是一個開源分散式搜索和分析引擎。它被用於各種用例,例如應用程序搜索、日誌分析及安全分析等。Elasticsearch基於Lucene搜索引擎庫構建,提供了全文搜索、結構化搜索、分面搜索以及文本分析等功能。
二、Docker Compose概覽
Docker Compose是一個用於定義和運行多容器Docker應用程序的工具。通過使用Docker Compose可以輕鬆地定義和管理應用程序的各種服務,它可以自動構建並啟動所有應用程序的依賴關係。Docker Compose可以簡化開發、測試和部署處理。
三、Docker Compose Elasticsearch
Docker Compose Elasticsearch 是一種容器化的 Elasticsearch 配置方案。它使用 Docker Compose 創建和管理 Docker 鏡像,並在 Docker 容器中運行 Elasticsearch。使用它可以輕鬆地創建 Elasticsearch 集群、進行分散式搜索以及實時分析等操作。
四、安裝Docker Compose Elasticsearch
首先,要安裝 Docker 和 Docker Compose。可以按照官方文檔進行安裝。安裝完成後,需在Docker Compose文件中定義Elasticsearch服務。
五、定義Docker Compose文件
以下是一個簡單的Docker Compose文件,用於在容器中啟動Elasticsearch服務:
version: '3'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
container_name: elasticsearch
environment:
- discovery.type=single-node
ports:
- 9200:9200
- 9300:9300
本示例定義了一個名為「elasticsearch」的服務,使用了Elasticsearch官方的鏡像。環境變數「discovery.type=single-node」表示該服務是單節點部署,請注意這個配置項的格式;然後定義了兩個映射埠用於訪問Elasticsearch服務。
六、啟動Docker Compose Elasticsearch服務
要啟動該服務,只需在命令行中進入到Docker Compose文件所在目錄,然後運行以下命令:
docker-compose up -d
該命令會自動構建、啟動並運行一個名為「elasticsearch」的容器。
七、訪問Elasticsearch服務
啟動完成後,就可以通過瀏覽器訪問該服務。 在瀏覽器地址欄中輸入:http://localhost:9200。如果一切正常,將看到以下輸出:
{
"name" : "elasticsearch",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "hHxFNMRwRxavCJHx0jUJkA",
"version" : {
"number" : "7.15.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "79d65f6e357953a5e35cb43e1bdc3c85960b232b",
"build_date" : "2021-09-16T03:05:29.143308416Z",
"build_snapshot" : false,
"lucene_version" : "8.9.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
八、添加其他服務
可以在同一個Docker Compose文件中添加其他服務,如Kibana服務,以實現更多的使用場景。以下示例演示如何使用 Docker Compose 運行 Elasticsearch 和 Kibana:
version: "2.2"
services:
elasticsearch:
container_name: elasticsearch
image: docker.elastic.co/elasticsearch/elasticsearch:7.15.0
environment:
- discovery.type=single-node
ulimits:
memlock:
soft: -1
hard: -1
ports:
- "9200:9200"
volumes:
- esdata1:/usr/share/elasticsearch/data
kibana:
container_name: kibana
image: docker.elastic.co/kibana/kibana:7.15.0
ports:
- "5601:5601"
environment:
ELASTICSEARCH_URL: http://elasticsearch:9200
ELASTICSEARCH_HOSTS: http://elasticsearch:9200
depends_on:
- elasticsearch
volumes:
esdata1:
driver: local
該示例中,我們除了elasticsearch服務外還添加了kibana服務,kibana是一個用於可視化管理Elasticsearch數據和分析的Web界面,該服務需要依賴於elasticsearch服務。
九、總結
本文介紹了如何使用Docker Compose配置Elasticsearch服務,並演示了如何添加kibana服務進行管理和分析。通過Docker Compose,我們可以輕鬆地創建和管理多個Docker容器,實現了分散式搜索和分析。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/246085.html
微信掃一掃
支付寶掃一掃