值得一看
广告
彩虹云商城
广告

热门广告位

提升文档管理:推荐一键Docker部署的全文索引搜索引擎工具

一、简介

  • 可以解析常用格式文档,并进行全文索引,支持所有text类型文本、doc、docx、xls、xlsx、ppt、pptx,pdf等等
  • 提供在线访问页面,支持文档的在线上传、搜索、预览等操作,相关操作相应API接口,可以轻松接入第三方系统
  • 相关技术应用包括:thinkphp 6.0框架,ant design pro V5,轻量级全文搜索引擎zincsearch,文档转换工具LibreOffice
  • 开源地址参考:https://github.com/luler/hello_document
  • 该项目的系统架构设计图可参考:

二、安装

  • 提前安装好Docker、docker-compose软件环境
  • 克隆代码
    git clone https://github.com/luler/hello_document.git
  • 进入代码根目录,编辑 docker-compose.yml,内容参考下面:
    services:
      php_nginx:
        image: registry.cn-shenzhen.aliyuncs.com/luler/linux_php_nginx:libreoffice
        restart: always
        privileged: true
        ports:
          - 3322:80
        volumes:
          - ./config/nginx/conf:/usr/local/nginx/conf  #nginx配置
          - ./config/php/etc:/usr/local/php/etc  #php配置
          - ./config/init.sh:/init.sh  #初始化脚本
          - ./code/api:/home/wwwroot/api #api代码
          - ./code/web/dist:/home/wwwroot/web/dist #web代码
          - ./runtime/wwwlogs:/home/wwwlogs #日志、数据缓存
          - ./config/supervisor/supervisord.conf:/etc/supervisord.conf #supervisor配置
          - ./config/supervisor/supervisord.d:/etc/supervisord.d #supervisor配置
      zincsearch:
        image: public.ecr.aws/h9e2j3o7/zinc:latest
        restart: always
        privileged: true
        user: root
        volumes:
          - ./runtime/zinc_data:/data
        environment:
          - DATA_PATH="/data"
          - ZINC_FIRST_ADMIN_USER=admin
          - ZINC_FIRST_ADMIN_PASSWORD=zincsearch
        ports:
          - 4080:4080
  • 执行如下命令,一键启动
    docker-compose up -d

    启动成功,服务即可正常访问

三、使用

1. 访问在线页面进行使用

  • 安装成功后,可以访问页面:http://ip:3322/,默认登录账号:admin,密码:admin

  • 上传文档,入库之后,就能建立文档全文索引

  • 根据关键词搜索文档,模糊匹配到文档内容,搜索语法类似 Elasticsearch

  • 点击文档,支持在线预览word文档、文本文档等(本质上是转成PDF预览)

  • 支持批量操作,打包下载、批量上传、删除等

2. 使用相关API

  • 相关接口与页面逻辑一致
  • 授权登录接口
    接口:
    POST:/api/getAccessToken
    参数(json):
    {
        "appid": "admin",
        "appsecret": "admin"
    }
    返回(json):
    {
        "message": "登录成功",
        "code": 200,
        "info": {
            "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJseiIsImF1ZCI6IiIsImV4cCI6MTc1NDA2MTM2NCwiZGF0YSI6eyJ1aWQiOiIxIn19.YDrUl8XaAZFDU-Gok2ZYGcSChXPCYiHZ2HsFloNcXLQ",
            "expires_in": 86400,
            "is_admin": "1"
        }
    }
  • 上传文档接口
    接口:
    POST:/api/uploadFile
    请求头:
    Authorization: {access_token}
    参数(form-data):
    files[]=@"/C:/Users/12070/Desktop/php面试题/PHP算法面试题.docx
    返回(json):
    {
        "message": "上传成功",
        "code": 200,
        "info": []
    }
  • 搜索文档接口
    接口:
    POST:/api/getFileList
    请求头:
    Authorization: {access_token}
    参数(form-data):
    {
        "search": "冒泡排序"
    }
    返回(json):
    {
        "message": "获取成功",
        "code": 200,
        "info": {
            "list": [
                {
                    "id": "25",
                    "name": "PHP算法面试题.docx", //文件名
                    "path": "/storage/doc/20250731/bcf8fc7e70275a3942769aa955c19e92.docx", //文件路径
                    "pdf": "/storage/pdf/20250731/bcf8fc7e70275a3942769aa955c19e92.pdf", //预览PDF路径
                    .....
                    "size": "120369", //大小
                    "md5": "0e6dda72bc4c8451128699fa6456b96c", //文件md5
                    ......
                    "highlight_text": "…1 潮涌来也\t \n1.使用PHPif (…" //搜索内容高亮
                }
            ],
            "total": 1
        }
    }
  • 其他接口,可根据需要自行探索

四、总结

  • 文档搜索小工具,提供在线页面,简单易用,可作为凌乱文档的一个存储库,需要时快速搜索使用
  • 可根据提供API进行接入,集成到第三方系统,作为文档搜索引擎(数据库默认是sqlite,生产建议更换为mysql)
  • Docker一键部署,几乎零配置,小白轻松入手使用

临时在线试用参考:https://cas.luler.top/?search=6348f0f641ba3

温馨提示: 本文最后更新于2025-09-30 16:06:41,某些文章具有时效性,若有错误或已失效,请在下方留言或联系在线客服
文章版权声明 1 本网站名称: 创客网
2 本站永久网址:https://new.ie310.com
1 本文采用非商业性使用-相同方式共享 4.0 国际许可协议[CC BY-NC-SA]进行授权
2 本站所有内容仅供参考,分享出来是为了可以给大家提供新的思路。
3 互联网转载资源会有一些其他联系方式,请大家不要盲目相信,被骗本站概不负责!
4 本网站只做项目揭秘,无法一对一教学指导,每篇文章内都含项目全套的教程讲解,请仔细阅读。
5 本站分享的所有平台仅供展示,本站不对平台真实性负责,站长建议大家自己根据项目关键词自己选择平台。
6 因为文章发布时间和您阅读文章时间存在时间差,所以有些项目红利期可能已经过了,能不能赚钱需要自己判断。
7 本网站仅做资源分享,不做任何收益保障,创业公司上收费几百上千的项目我免费分享出来的,希望大家可以认真学习。
8 本站所有资料均来自互联网公开分享,并不代表本站立场,如不慎侵犯到您的版权利益,请联系79283999@qq.com删除。

本站资料仅供学习交流使用请勿商业运营,严禁从事违法,侵权等任何非法活动,否则后果自负!
THE END
喜欢就支持一下吧
点赞15 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容