轻量级带搜索引擎的网页文档仓库
项目描述
多康是一个轻量级文档仓库。它是一个网络应用程序,
为客户提供上传文档的端点。
将文档发送到多康就像执行一个POST查询一样简单,例如
$ curl \ -X POST \ --form name=project_name \ -F ":action=doc_upload" \ -F content=@../documentation.zip \ http://dokang:my-secret-token@dokang.example.com/upload
提供一个主页,其中包含所有文档列表和一个简单的搜索表单,允许用户在HTML、文本和PDF文件中进行搜索。其他格式可以通过使用扩展来处理。
提供所有文档。
多康还附带命令行界面。它在本质上是一个Whoosh搜索引擎的包装器,带有一个非常简单的HTML文本索引器。它可以扩展以从其他类型的文件(如PDF)检索内容。
多康与Readthedocs类似(尽管Readthedocs具有更广泛的功能),但提供跨所有托管文档的全局搜索。所有这些都可以通过简单的设置提供,无需任何关系数据库。
我们(Polyconseil)用它来搜索我们所有项目的Sphinx生成的文档。然而,它可以用于托管任何类型的文档。
构建和运行自己的docker镜像
要构建自己的镜像
$ docker build -t dokang .
要运行镜像
$ docker run --rm -e DOKANG_UPLOAD_TOKEN=my_little_secret \
-e DOKANG_NAME='My docs' \
-e DOKANG_DESCRIPTION='Documentations of all my projects' \
-e DOKANG_SERVER_TRUSTED_PROXY=129.14.12.1 # Optional: the IP address of the proxy to pass to waitress server's trusted_proxy
-p 8080:6543
dokang
在您的浏览器中转到http://localhost:8080/,您应该看到文档列表。
变更日志
0.10.1 (2023-02-10)
修复选项选择(在主页上)
0.10.0 (2023-02-09)
升级依赖项
支持Python 3.7和3.8
停止支持Python <=3.6
修复Python 3中的OpenSearch视图
0.9.5 (2016-12-14)
改进数据存储库初始化。
0.9.4 (2016-07-05)
修复dockerfile。
0.9.3 (2016-07-04)
添加dockerfile。
0.9.2 (2016-04-26)
更新文档时保持标题。
0.9.1 (2016-04-01)
修复打包
0.9.0 (2016-04-01)
允许同时运行Dokang Web应用程序的线程。
到目前为止,Dokang在启动时和上传新文档集时更新其文档集列表。显然,同时运行多个Web应用程序线程的效果不佳,因为一个线程如果被另一个线程添加了新文档集,将无法看到任何新文档集。
现在这个限制已经解除,Dokang Web应用程序可以以多线程的方式运行(例如,使用多个uWSGI工作者)。
Dokang 0.8.2 (2016-02-24)
在上传文档的新版本后更新文档集标题。
Dokang 0.8.1 (2016-02-24)
修复打包。
Dokang 0.8.0 (2016-02-24)
使用索引页的标题作为每个文档集的标题。
按文档集标题的首字母分组。
Dokang 0.7.0 (2016-02-01)
添加对Python 3.5的支持。
在初始化索引时,现在dokang init会创建所有需要的中间级目录。
将删除选项添加到dokang clear以删除上传的文件。
修复更改检测:我们以前存储并使用文件的修改时间。现在,我们为每个文件计算并存储一个MD5哈希值。这比获取修改时间慢,但它处理更多的用例。
这是一个向后不兼容的更改。您必须像这样重新索引所有文档
dokang init --force dokang index
移除索引优化。现在索引应该要快得多,尤其是在大型文档库中。
修复解析非ASCII、非UTF-8 HTML文件时的编码错误。UTF-8文件已被正确处理。
添加对OpenSearch的基本支持。
排除更多Sphinx生成的文件,如objects.inv和searchindex.js。
在命令行客户端的搜索结果中显示文件路径。
修复文档删除中的错误。当一个文档被检测为从文档集中删除(即当文件不再存在于“上传”目录中时),索引过程会从索引中删除具有相同路径(例如index.html)的所有文档集。这些文件本身没有被删除,因此下一次索引会将它们重新添加到索引中。
使用异步索引写入器,允许并发执行多个索引。如果没有这个,将引发whoosh.index.LockError异常。
Dokang 0.6.1 (2015-03-03)
修复上传文档时的重定向错误。
Dokang 0.6.0 (2015-03-03)
棕色袋子发布。
停止对Python 2.6的支持。
从Dokang的根目录(“/”)提供文档。此更改是不向后兼容的。
在本次提交之前,如果上传目录命名为“uploaded”,则文档将在/uploaded/<doc_set_id>处可用。这有点太冗长了。
此次(向后不兼容)更改后,文档现在可在/<doc_set_id>处找到。
Dokang 0.5.0(2015-02-18)
在搜索结果的URL查询字符串中添加“highlight”。此参数由Sphinx生成的HTML文件理解。
添加文档上传端点(使用Dokang网络前端提供服务)
Dokang 0.4.2(2014-09-01)
修复了前端生成的难看的(但可工作)URL。当项目的URL配置以斜杠结尾时,它们曾经包含两个连续的斜杠(例如,http://example.com/project//doc.html)。
Dokang 0.4.1(2014-08-27)
修复了MANIFEST.in,以便Python包包含网络前端所需的所有模板和样式表。
Dokang 0.4.0(2014-07-04)
INI配置文件中添加了一个新的dokang.hit_limit选项。它限制了在Web前端显示的结果数量(或如果没有此选项,则取消此限制)。
Dokang 0.3.0(2014-07-04)
修复了HTML收割器中的错误。尝试使用它会因异常而失败,因为Whoosh会抱怨一些意外的是字节字符串的东西。
修复了处理已删除文档的错误。它们没有被从索引中删除。
Dokang 0.2.0(2014-06-24)
初始版本。
项目详情
下载文件
下载适合您平台的应用程序。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
构建分布
Dokang-0.10.1-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 51b0f02a4f0d8b757395502ff4094f4635df434311e55d52c309f4cd1e41cfad |
|
MD5 | d4c45c954f9ca14eade8b79e6e5e5995 |
|
BLAKE2b-256 | 5d65e5cc757a56f861bd2321d52efef825eecb58af92369b39e473c9f998a8ab |