掛載 IK 分詞器至 Elasticsearch Docker 容器 - Docker Docker Compose 教程

簡介

本博客將講解如何在 Docker 和 Docker-Compose 中運行 Elasticsearch,并掛載 IK 分詞器。

步驟

一、快速運行Elasticsearch:8.1.3

1.首先,我們需要創建一個新的 Docker 網絡:"elastic"。這個網絡會提供給我們接下來所要創建的 Docker 容器之間共享。運行命令:

docker network create elastic

2.然后,從 docker.elastic.co 拉取名為 elasticsearch 的 Docker 鏡像,版本為 8.1.3。運行命令:

docker pull docker.elastic.co/elasticsearch/elasticsearch:8.1.3

3.運行剛剛拉取的 Elasticsearch Docker 鏡像,并創建一個 Docker 容器:

docker run --name es01 --net elastic -p 9200:9200 -p 9300:9300 -it docker.elastic.co/elasticsearch/elasticsearch:8.1.3
 

二、Docker 給運行的Elasticsearch Docker容器掛載 IK 分詞器

1.獲取正在運行的 Elasticsearch Docker 容器內 config、data、plugins 的路徑,運行命令:

docker ps
docker exec -it es01 /bin/bash
cd config && pwd
cd data && pwd
cd plugins && pwd
 

2.止并刪除 es01 容器:

exit
docker stop es01
docker rm es01
 

3.創建目錄結構并復制相關文件:

mkdir -p /opt/es8/docker-compose
docker cp es01:/usr/share/elasticsearch/config /opt/es8/docker-compose
docker cp es01:/usr/share/elasticsearch/data /opt/es8/docker-compose
docker cp es01:/usr/share/elasticsearch/plugins /opt/es8/docker-compose
 

4.在?"/opt/es8/docker-compose/plugins" 創建一個名為 "ik" 的文件夾:

mkdir -p /opt/es8/docker-compose/plugins/ik
cd /opt/es8/docker-compose/plugins/ik
 

5.下載并解壓 8.1.3 分詞器,并刪除安裝包:

wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v8.1.3/elasticsearch-analysis-ik-8.1.3.zip
unzip elasticsearch-analysis-ik-8.1.3.zip
rm -Rf elasticsearch-analysis-ik-8.1.3.zip
 

6.重新啟動 Elasticsearch docker 容器:

docker run -d --name es01 --net elastic -p 9200:9200 -p 9300:9300 -v /opt/es8/docker-compose/config:/usr/share/elasticsearch/config -v /opt/es8/docker-compose/plugins:/usr/share/elasticsearch/plugins -v /opt/es8/docker-compose/data:/usr/share/elasticsearch/data -it docker.elastic.co/elasticsearch/elasticsearch:8.1.3
 

7.進入 Elasticsearch 容器,驗證 IK 分詞器是否安裝成功:

docker ps
docker exec -it es01 /bin/bash
cd /bin
./elasticsearch-plugin list
 

三、Docker-Compose 給運行的Elasticsearch Docker容器掛載 IK 分詞器

1.在"/opt/es8/docker-compose" 創建 "docker-compose.yml" 文件:

cd /opt/es8/docker-compose
touch docker-compose.yml
 

2.注意在 "docker-compose.yml" 文件中添加以下參數:

version: '0.1'
services:es01:image: docker.elastic.co/elasticsearch/elasticsearch:8.1.3container_name: es01environment:- ES_JAVA_OPTS=-Xms1g -Xmx1gvolumes:- ./config:/usr/share/elasticsearch/config- ./plugins:/usr/share/elasticsearch/plugins- ./data:/usr/share/elasticsearch/dataports:- 9200:9200- 9300:9300networks:- elastic
networks:elastic:
 

3.運行 "docker-compose.yml" 文件:

docker compose up
 

4.看當前正在運行的 Elasticsearch Docker 容器。

docker ps
 

至此,我們已經在 Docker 和 Docker-Compose 中成功運行了 Elasticsearch 并掛載了 IK 分詞器。

 

結語

通過運用 Docker 和 Docker-Compose,我們可以更加方便地部署及管理 Elasticsearch,并能利用 IK 分詞器提供中文分詞能力。希望這篇博文可以讓你更好地理解這些工具與技術如何協同工作。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/35789.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/35789.shtml
英文地址,請注明出處:http://en.pswp.cn/news/35789.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Ceph分布式存儲系統優化分析

Ceph支持多種存儲訪問接口,現有的多種性能測試工具都可用于Ceph的性能測試,如測試塊接口性能的fio,iometer等;測試CephFS接口的filebench,fio等;測試對象接口的cosbench等。Ceph有專用的基準測試集CBT,其包…

1. VisionOS平臺介紹

介紹 VisionOS 可實現與現實世界無縫集成并與其他虛擬內容共存的 3D 多任務體驗。這為個人生產力、生活方式和娛樂應用打開了一個充滿新可能性的世界,并為開發人員打開了一個全新的市場。然而,它也帶來了圍繞多任務處理和與身體互動的新挑戰。Unity Poly…

【數據結構與算法】十大經典排序算法-插入排序

🌟個人博客:www.hellocode.top 🏰Java知識導航:Java-Navigate 🔥CSDN:HelloCode. 🌞知乎:HelloCode 🌴掘金:HelloCode ?如有問題,歡迎指正&#…

云原生應用場景及交付部署

云原生是一種軟件架構和開發方式,旨在支持在云環境中構建、部署和管理應用程序。它是為了克服傳統應用程序在云環境中所面臨的挑戰而提出的一種方法。云原生應用場景廣泛,以下是一些常見的云原生應用場景,并提供了一些詳細解釋: …

第57步 深度學習圖像識別:CNN可視化(Pytorch)

基于WIN10的64位系統演示 一、寫在前面 由于不少模型使用的是Pytorch,因此這一期補上基于Pytorch實現CNN可視化的教程和代碼,以SqueezeNet模型為例。 二、CNN可視化實戰 繼續使用胸片的數據集:肺結核病人和健康人的胸片的識別。其中&…

問DAO成都丨CyberDAO共識會議在成都圓滿落幕

過往匆匆,唯有共識綿延;未來已來,愿與智者同謀。2023年8月9日至8月10日,CyberDAO共識會議在成都市大邑縣順利召開,吸引了上百名Web3.0與元宇宙愛好者參與本次會議。CyberDAO大中華區運營團隊合伙人JR、漫威、安祈、可樂…

【0.1】lubancat魯班貓4刷入debian網絡ping 域名不通問題

目錄 1. 環境2. 操作步驟 1. 環境 lubancat4魯班貓4 (4G0)不帶emmc系統鏡像lubancat-rk3588-debian11-gnome-20230807_update.img官方資料地址https://doc.embedfire.com/products/link/zh/latest/linux/ebf_lubancat.html 2. 操作步驟 從官網給的百度網盤下載linux系統全部…

10、雜項:遍歷指定目錄計算文件的md5并輸出到文件

目錄 🍅點擊這里查看所有博文 隨著自己工作的進行,接觸到的技術棧也越來越多。給我一個很直觀的感受就是,某一項技術/經驗在剛開始接觸的時候都記得很清楚。往往過了幾個月都會忘記的差不多了,只有經常會用到的東西才有可能真正記…

【Rust】Rust學習 第十一章編寫自動化測試

Rust 是一個相當注重正確性的編程語言,不過正確性是一個難以證明的復雜主題。Rust 的類型系統在此問題上下了很大的功夫,不過它不可能捕獲所有種類的錯誤。為此,Rust 也在語言本身包含了編寫軟件測試的支持。 編寫一個叫做 add_two 的將傳遞…

[C++ 網絡協議編程] TCP/IP協議

目錄 1. TCP/IP協議棧 2. TCP原理 2.1 TCP套接字中的I/O緩沖 2.2 TCP工作原理 2.2.1 三次握手(連接) 2.2.2 與對方主機的數據交換 2.2.3 四次握手(斷開與套接字的連接) TCP(Transmission Control Protocol傳輸控…

無涯教程-Perl - ref函數

描述 如果EXPR為引用,則此函數返回真值;如果未提供EXPR,則為$_。返回的實際值還定義了引用所引用的實體的類型。 內置類型為- REFSCALARARRAYHASHCODEGLOBLVALUEIO::Handle 如果使用bless()函數為變量設置了祝福,則將返回新的數據類型。新的數據類型通常將是一個…

比較編程語言C和Go

使用一個簡單的計數程序來比較古老的C語言和現代的Go語言。Go是一種現代的編程語言,它在很大程度上源自C語言。因此,對于任何使用C語言編寫程序的人來說,Go可能會感覺很熟悉。Go使得編寫新程序變得容易,同時又讓C程序員感到熟悉&a…

大數據-玩轉數據-Flink 自定義Sink(Mysql)

一、說明 如果Flink沒有提供給我們可以直接使用的連接器,那我們如果想將數據存儲到我們自己的存儲設備中,mysql 的安裝使用請參考 mysql-玩轉數據-centos7下mysql的安裝 創建表 CREATE TABLE sensor (id int(10) ) ENGINEInnoDB DEFAULT CHARSETutf8二…

二 根據用戶行為數據創建ALS模型并召回商品

二 根據用戶行為數據創建ALS模型并召回商品 2.0 用戶行為數據拆分 方便練習可以對數據做拆分處理 pandas的數據分批讀取 chunk 厚厚的一塊 相當大的數量或部分 import pandas as pd reader pd.read_csv(behavior_log.csv,chunksize100,iteratorTrue) count 0; for chunk in …

DNS協議及其工作原理

DNS是域名系統(Domain Name System)的縮寫,它是一種用于將域名轉換為IP地址的分布式數據庫系統。它是因特網的基石,能夠使人們通過域名方便地訪問互聯網,而無需記住復雜的IP地址。 DNS的歷史可以追溯到1983年&#xf…

4個簡化IT服務臺任務的ChatGPT功能

最近幾個月,ChatGPT 風靡全球,這是一個 AI 聊天機器人,使用戶能夠生成腳本、文章、鍛煉圖表等。這項技術在各行各業都有無窮無盡的應用,在本文中,我們將研究這種現代技術如何幫助服務臺團隊增強服務交付和客戶體驗。 什…

最佳實踐:如何優雅地提交一個 Amazon EMR Serverless 作業?

《大數據平臺架構與原型實現:數據中臺建設實戰》一書由博主歷時三年精心創作,現已通過知名IT圖書品牌電子工業出版社博文視點出版發行,點擊《重磅推薦:建大數據平臺太難了!給我發個工程原型吧!》了解圖書詳…

章節7:XSS檢測和利用

章節7&#xff1a;XSS檢測和利用 測試payload <script>alert(XSS)</script> <script>alert(document.cookie)</script> ><script>alert(document.cookie)</script> ><script>alert(document.cookie)</script> &qu…

元宇宙之經濟(02)理解NFT

1 NFT是什么&#xff1f; 想象一下&#xff0c;你小時候曾經在操場上集齊過各種不同的貼紙&#xff0c;然后和朋友們交換&#xff0c;這些貼紙有著獨特的圖案和價值。NFT的概念與此類似&#xff0c;但在數字世界中運作。NFT是一種基于區塊鏈技術的數字資產&#xff0c;每個NFT…

golang—面試題大全

目錄標題 sliceslice和array的區別slice擴容機制slice是否線程安全slice分配到棧上還是堆上擴容過程中是否重新寫入go深拷貝發生在什么情況下&#xff1f;切片的深拷貝是怎么做的copy和左值進行初始化區別slice和map的區別 mapmap介紹map的key的類型map對象如何比較map的底層原…