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" }
}}