使用docker“一鍵”啟動jd(職位資訊)的搜尋(es)與統計(Kibana)
jd-search-4-docker
三鍵啟動所有服務
MySQL+ELK+JD-Search-Api
本來是想build成是三個個image,然後使用docker-compose一鍵啟動的,但是做到後來遇到compose容器啟動順序的問題。雖說是按照順序啟動的,
但是並不會等你啟動完畢後再去啟動另外一個容器,官方相關連結:https://docs.docker.com/compose/startup-order/ 不想去折騰了就還是按照分塊的去啟動吧。
Mysql啟動與資料匯入
在src/docker/mysql的根目錄下執行
docker build -t jd-search-app-mysql .
等待構建結束,啟動該容器
docker run -d -p 3306:3306 jd-search-app-mysql
該過程包括mysql服務的啟動—>資料的匯入—>建立使用者訪問許可權
日誌與資料庫如下
elk部署
本來想只部署es的,後來想一想算了, 還是搞一套吧,dockerhub有現成的,直接用即可,命令如下
docker run --ulimit nofile=65536:65536 \
-p 5601:5601 \
-p 9200:9200 \
-p 5044:5044 \
-p 5045:5045 \
-p 5046:5046 \
-d --restart=always \
--name jd-search-elk \
sebp/elk
注:如果記憶體不是很夠的話,可以加上下面引數
-e ES_JAVA_OPTS="-Xms512m -Xmx512m"
啟動完畢,訪問地址http://localhost:9200/就可以看到es的資訊了
{
"name": "vK92yOz",
"cluster_name": "elasticsearch",
"cluster_uuid": "WMVWK588TeiunfuBWxDKxg",
"version": {
"number": "6.4.0",
"build_flavor": "default",
"build_type": "tar",
"build_hash": "595516e",
"build_date": "2018-08-17T23:18:47.308994Z",
"build_snapshot": false,
"lucene_version": "7.4.0",
"minimum_wire_compatibility_version": "5.6.0",
"minimum_index_compatibility_version": "5.0.0"
},
"tagline": "You Know, for Search"
}
app
最後就是搜尋服務了,直接進入程式碼啟動該服務即可(記得要更改資料庫和es的連結配置)
過程包括
自動建立索引—>建立mapping—>自動索引資料(前提是上面兩個服務都ok)
玩耍
搜尋服務只簡單的提供了三個介面,自己可以接著開發
使用kibana可以做些統計,如圖
程式碼:github
相關文章
- Thinkphp TPM 職位搜尋和職位推薦PHP
- docker - [07] 部署ES+KibanaDocker
- ES使用和搜尋中心的建設(一:基礎介紹與語法)
- Elasticsearch(ES)的高階搜尋(DSL搜尋)(上篇)Elasticsearch
- Elasticsearch(ES)的高階搜尋(DSL搜尋)(下篇)Elasticsearch
- Redis 實戰 —— 10. 實現內容搜尋、定向廣告和職位搜尋Redis
- 使用docker compose一鍵啟動多個應用Docker
- ES和kibana docker啟動成功後瀏覽器卻顯示無法訪問Docker瀏覽器
- 使用Alfred快速搜尋npm包資訊AlfredNPM
- Linux搜尋啟動工具FindexLinuxIndex
- idea全域性搜尋的快捷鍵 idea搜尋內容快捷鍵Idea
- 使用 Docker 和 Elasticsearch 構建一個全文搜尋應用程式DockerElasticsearch
- jQuery的搜尋關鍵詞自動匹配外掛jQuery
- [廣州]急尋一位Flutter高手兼職Flutter
- 分散式搜尋系統的設計分散式
- 使用elasticsearch搭建自己的搜尋系統Elasticsearch
- Dockerfile+docker-compose 安裝 es + ik + kibana 6.4.2Docker
- docker搭建Elasticsearch、Kibana、Logstash 同步mysql資料到ESDockerElasticsearchMySql
- kibana操作es
- laravel8實現ES搜尋Laravel
- ES 如何得到像mysql 中 like 一樣的搜尋結果MySql
- 職工資訊管理系統的設計
- esxi網路卡資訊搜尋
- Elasticsearch 的配置與使用,為了全文搜尋Elasticsearch
- ElasticSearch搜尋欄位不需要計入得分Elasticsearch
- 啟發式搜尋的方式(深度優先,廣度優先)和 搜尋方法(Dijkstra‘s演算法,代價一致搜尋,貪心搜尋 ,A星搜尋)演算法
- 完成搜尋模組功能,引入搜尋頁面。接收並封裝使用者的搜尋關鍵字、三級分類id、屬性值列表,對es執行查詢操作,並設定高亮!封裝
- elasticsearch 高階搜尋示例 es7.0Elasticsearch
- ES 筆記十七:結構化搜尋筆記
- laravel Es搜尋 檢索高亮顯示Laravel
- MediaPost: 移動搜尋廣告投資增加三位數
- 網站最佳化搜尋引擎與關鍵詞網站
- 搜尋引擎關鍵字智慧提示的一種實現
- 使用 Postgres 的全文搜尋構建可擴充套件的事件驅動搜尋架構套件事件架構
- 搜尋Oracle DDL中的關鍵字Oracle
- 搜尋檔案中的關鍵字
- Numpy 排序搜尋計數與集合操作排序
- 有贊基於ES的搜尋系統架構是如何演進的?架構