Python sphinx 如何使用ReadTheDocs或Sphinx托管私有文档
我对这件事一无所知。花了一整天的时间试图找出“最常用”的方法。我想要实现的是readthedocs.org之类的东西,但是针对的是一个私人客户(和专有项目) 几乎所有常见问题解答、博客帖子、指南等都描述了如何使用GitHub页面或readthedocs.org(.com)托管(发布)文档 我曾尝试在本地使用Sphinx(注意:不是“Sphinx搜索”),我可以很容易地构建一个示例演示文档,但我不太明白如何托管一个“可搜索”的解决方案,就像它所使用的解决方案一样(尽管它似乎使用readthedocs.org作为搜索后端) 我已尝试在本地部署readthedocs.org,但:Python sphinx 如何使用ReadTheDocs或Sphinx托管私有文档,python-sphinx,read-the-docs,Python Sphinx,Read The Docs,我对这件事一无所知。花了一整天的时间试图找出“最常用”的方法。我想要实现的是readthedocs.org之类的东西,但是针对的是一个私人客户(和专有项目) 几乎所有常见问题解答、博客帖子、指南等都描述了如何使用GitHub页面或readthedocs.org(.com)托管(发布)文档 我曾尝试在本地使用Sphinx(注意:不是“Sphinx搜索”),我可以很容易地构建一个示例演示文档,但我不太明白如何托管一个“可搜索”的解决方案,就像它所使用的解决方案一样(尽管它似乎使用readthedoc
任何建议都将不胜感激 托管sphinx文档所需的唯一东西是静态文件服务器(搜索无需后端,请参阅) 这就是说,使用私有readthedocs服务器可能过于工程化了。 只需将文件部署到静态文件服务器,并将基本URL(例如,
docs.myapp.com
)指向index.html
文件
您可以使用自动化部署
出于完整性考虑:我确信可以使用本地readthedocs服务器来构建您的项目。但是readthedocs显然不是为内部部署而设计的,您可能会发现很难获得专业支持。我参与了一个场景,开发运营团队认为使用在我们努力解决本地readthedocs实例的构建/性能问题之后,他们通常使用的一组工具。如果您想托管静态文档,可以通过设置一个静态文件服务器(如nginx)来实现。 仅此文件位于/etc/nginx/sites available/default中:
server {
listen 80 default_server;
index index.html index.htm index.nginx-debian.html;
server_name _;
location /doc/your-docs {
root /path/to/docs;
}
}
我们围绕这一概念构建了一个简单的工具,用于为多个项目自托管文档并对其进行版本化:
我发现向sphinx生成的Makefile(使用rsync并依赖于dirhtml目标)添加“make publish”目标是一个简单而干净的解决方案,它让我可以控制文档何时更新。为每次提交生成文档似乎是相当浪费的(并导致推送坏的文档版本)