Elasticsearch 是一個分布式、RESTful 風格的搜索和數據分析引擎,能夠解決不斷涌現出的各種用例。通過 Docker 安裝 Elasticsearch 可以簡化部署過程,并且能夠快速啟動和運行。本文將詳細介紹如何使用 Docker 安裝 Elasticsearch。
在開始之前,確保你的系統上已經安裝了 Docker。如果還沒有安裝 Docker,可以參考以下步驟進行安裝。
# 更新包索引
sudo apt-get update
# 安裝必要的包以允許 apt 通過 HTTPS 使用倉庫
sudo apt-get install apt-transport-https ca-certificates curl software-properties-common
# 添加 Docker 的官方 GPG 密鑰
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# 添加 Docker 的穩定版倉庫
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
# 更新包索引
sudo apt-get update
# 安裝 Docker CE
sudo apt-get install docker-ce
# 安裝必要的包
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加 Docker 的穩定版倉庫
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安裝 Docker CE
sudo yum install docker-ce
# 啟動 Docker 服務
sudo systemctl start docker
# 設置 Docker 開機自啟
sudo systemctl enable docker
在 Docker 中安裝 Elasticsearch 的第一步是從 Docker Hub 上拉取 Elasticsearch 的官方鏡像。
# 拉取 Elasticsearch 鏡像
docker pull docker.elastic.co/elasticsearch/elasticsearch:7.10.1
注意:
7.10.1
是 Elasticsearch 的版本號,你可以根據需要選擇其他版本。
拉取鏡像后,可以使用 docker run
命令來啟動 Elasticsearch 容器。
# 運行 Elasticsearch 容器
docker run -d --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:7.10.1
-d
:以守護進程模式運行容器(后臺運行)。--name elasticsearch
:為容器指定一個名稱,這里命名為 elasticsearch
。-p 9200:9200
:將主機的 9200 端口映射到容器的 9200 端口,9200 是 Elasticsearch 的 HTTP API 端口。-p 9300:9300
:將主機的 9300 端口映射到容器的 9300 端口,9300 是 Elasticsearch 的節點間通信端口。-e "discovery.type=single-node"
:設置 Elasticsearch 的發現類型為單節點模式,適用于開發和測試環境。容器啟動后,可以通過以下命令驗證 Elasticsearch 是否正常運行。
# 查看容器日志
docker logs elasticsearch
如果看到類似以下的日志輸出,說明 Elasticsearch 已經成功啟動:
[2023-10-01T12:00:00,000][INFO ][o.e.n.Node ] [node-1] started
[2023-10-01T12:00:00,000][INFO ][o.e.g.GatewayService ] [node-1] recovered [0] indices into cluster_state
你也可以通過瀏覽器或 curl
命令訪問 Elasticsearch 的 HTTP API 來驗證:
curl -X GET "localhost:9200"
如果返回類似以下的 JSON 響應,說明 Elasticsearch 已經成功運行:
{
"name" : "node-1",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "abc123",
"version" : {
"number" : "7.10.1",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "abc123",
"build_date" : "2023-10-01T12:00:00.000Z",
"build_snapshot" : false,
"lucene_version" : "8.7.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
如果你需要停止或刪除 Elasticsearch 容器,可以使用以下命令。
# 停止容器
docker stop elasticsearch
# 刪除容器
docker rm elasticsearch
通過 Docker 安裝 Elasticsearch 非常簡單且高效。本文介紹了如何從 Docker Hub 拉取 Elasticsearch 鏡像、運行容器、驗證安裝以及停止和刪除容器的步驟。希望這篇文章能幫助你快速上手 Elasticsearch 的 Docker 部署。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。