docIndex是用於饋送docmag的批處理過程,docmag是for eLasticsearch的前端,允許服務器端文檔搜索很簡單。
DocIndex可以直接在操作系統上運行,但是建議在Docker容器中運行。該容器組成在docmag docker-compose.yml中。
通常,您不想在本地構建和運行docidx,而是運行出版的Docker容器:https://hub.docker.com/r/deckerego/docidx/
由於DOCIDX嚴重依賴計算機視覺和圖像處理,因此大量使用了與本機庫的綁定。帶有本機庫的包裝的Java發行量是屁股的巨大痛苦 - 因此,默認情況下利用Docker容器來運送東西。如果您只想啟動DocIdx並運行Docker將是最簡單的方法,但是如果您想調整代碼並在本地運行它,則需要跳過一些籃筐來安裝本機Libs。
docIdx使用綁定對opencv和tesseract本地庫。 OpenCV庫特別敏感。要在Macos中安裝本機Testearact庫,您可以使用自製釀造庫,如以下方式:
brew install tesseract
不幸的是,OpenCV 3.2在自製的下無法正確建立。對於MacOS,需要從源頭構建OPENCV。這可以完成:
wget https://github.com/opencv/opencv/archive/3.2.0.tar.gz
tar xzf 3.2.0.tar.gz
mkdir opencv-3.2.0/build
cd opencv-3.2.0/build
cmake .. -DBUILD_opencv_java=ON
make
make install
Linux分佈通常以Tesseract和OpenCV 3.2發貨,例如Ubuntu(Bionic):
apt-get install tesseract-ocr libopencv3.2-jni
安裝本機庫後,可以使用Maven和Spring Boot在本地進行構建和測試:
mvn -DargLine="-Djava.library.path=/usr/local/share/OpenCV/java/" install
如果您還想旋轉本地Elasticsearch和Kibana實例進行測試,則可以在tests/目錄中使用Docker配置部署兩者:
cd tests
docker-compose up -d
要在您的文檔中搜索,請在https://github.com/deckerego/docmag上使用DOCMAG
您也可以使用API或Kibana的開發工具直接查詢Elasticsearch。通過API發送的查詢可能是:
GET /docidx/_search
{"query": { "simple_query_string" :
{ "query": "water bill" }
}}