使用 gitee+sphinx+readthedocs 搭建个人博客

 

 

给大家安利如何快速搭建个人博客网站!

 

 

前言

sphinx.gif

这是我本地运行的一个使用sphinx构建的博客服务,这些文章,都是用markdown写的。

一直有个想法,就是把自己写的这些文件,搞成一个博客网站,放到网上,但是,一想,要搞个域名、一个服务器,这样长期运营维护,成本有些高。再一个,个人技术博客,独立地址,百度中抓取率可能也不高,结果就是花了大成本,结果自嗨,别人搜索、访问不到,所以,一直没有行动。

最近,发现用 gitee + sphinx + readthedocs 可以低学习成本,免资金投入,长期运营。今天,就来把这个技术分享给大家。

解决方案介绍

gitee,是国内免费的代码托管平台,相比github在国内,有更快的访问速度,全中文界面,对国人,更友好。

sphinx,是一个功能强大的文档生成器,具有许多用于编写技术文档的强大功能。

readthedocs,是一个免费在线文档托管范围平台,可以使用二级域名显示个人博客。

具体操作

  • Ⅰ、首先在gitee上创建一个开源项目

  • Ⅱ、下载项目,并配置python3环境

    • 建议使用虚拟运行环境
  • Ⅲ、安装sphinx

    • 在虚拟环境中安装sphinx pip install sphinx
      • **如果想在本地调试运行查看效果,需要安装sphinx-autobuild: pip install autobuild
    • 安装docutils: pip install docutils
    • 如果自己使用的markdown编写的文档,需要安装myst-parser: pip install myst-parser

    环境安装好之后,可以使用 sphinx-quickstart . 创建项目架构
    项目创建好之后,会在当前路径下生成如下文件结构:

    项目名称
    |————build
    |————makde.bat
    |————Makefile
    |————source|————_static|————_templates|————conf.py|————index.rst
     

    build文件夹: 生成的文件的输出目录

    source文件夹: 存放文档源文件

    _static文件夹: 静态文件目录

    _template文件夹: 模板目录

    conf.py文件: 进行sphinx配置的文件

    index.rst文件: 文档项目的起始文件,用于配置整个项目文档结构

    make.bat文件: Windows命令行中编译用的脚本

    Makefile文件: 编译脚本,make命令使用

  • Ⅳ、修改配置文件

    • 修改index.rst文件
    一级目录
    ============.. toctree:::maxdepth: 2文档名称或rst文件路径
    

    rst文件中,在双下划线或单下划线 上面一行的是一级目录;空行;“.. toctree::” 这是一个固定写法,代表这是目录树根;“:maxdepth: 2” 代表下面下面文档在目录树中显示几级目录;空行;你的文档名称(不带后缀)或者rst文件路径(不带后缀),不能顶行写,要与上面的“:maxdepth:”起始位置对齐。

    如果,你想做出分类的效果,上面这个模板,可以再复制粘贴到文件下面。如下图:

    Snipaste20230110125015.png

    • 修改conf.py文件

      • 这是项目的一个重要配置文件,具体配置参数,可以安装官方帮助来。如下图:

      Snipaste20230110125721.png

      • 在这个配置文件中,“html_theme”可以配置HTML的主题样式,默认是‘alabaster’,如果觉得这个主题样式自己不喜欢,可以去找自己喜欢的主题样式,然后,根据主题样式的帮助文档,使用主题。
  • Ⅴ、用markdown编写文档

    • 用markdown的编辑器编写你自己的md文档。
    • 把写好的md文件,放到项目的source文件夹下,再编辑index.rst文件,在文件中,添加md文件名称。这种方式,很简单、快捷。但是,一旦md文件多了,管理上就会有诸多不便。
    • 也可以在source文件夹下,自己创建文件夹,把md文件丢在自己建的文件夹中,分类管理,md文件中,有图片,也可以在md同级建文件夹管理图片,然后在index.rst文件中,添加“文件夹名/md文件名”,这种方式添加文件,或者,在新建的文件夹下,再新建一个rst文件,安装文章图1中的配置写法管理。
  • Ⅵ、本地测试(可选)

    • 这个步骤,不是必须的,但是建议还是本地测试一下,测试通过了,才正式用readthedocs来发布。
    • 安装sphinx-autobuild: pip install sphinx-autobuild
    • 执行: sphinix-autobuild.exe .\source\ .\build\html (windows系统) 这样,就会自动编译。编译通过,可以通过http://127.0.0.1:8000 来访问,看下效果。 如果觉得是界面效果不满意,可以去更换主题。
  • Ⅶ、在readthedocs上导入项目

    • 在导入readthedocs之前,需要把项目中安装的库生成到requirements.txt文件中。如:
     
    =====下面是requirements.txt文件中的内容=====
    sphinx
    docutils
    myst-parser
    
     
    • 上传已经通过自己验证之后的项目文件到gitee。build文件夹下的内容,可以不用上传。(github也是类似)
    • 访问 www.readthedocs.org 网站,注册一个账户,登录
    • 点击【导入一个项目】> 【手动导入】
    • 填写项目名称、gitee的项目路径(不带.git)、默认分支(master)
      • 注意: 这个项目名称将作为博客访问的readthedocs的二级域名,为了好记住,用英文,不要太长,与gitee上的项目名称没有关系,可以不同名。
    • 在readthedocs中找到自己导入的项目的【构建】,点击【构建版本】,此时就会开始构建。
      • 注意: readthedocs默认配置,构建项目时,会构建sphinx-HTML、PDF、EPUB 三种,如果你项目中的文档、图片较少,构建这三个没有问题。但是如果你项目文档、图片都比较大,可能会报错,可以在readthedocs项目的【管理】> 高级设置 中取消 PDF、EPUB的构建。
      • 注意: 因为readthedocs也是国外服务,在国内,可能也会出现访问慢或无法访问、或没有及时更新博客界面情况,只要构建成功,24小时后,再访问。



本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/235450.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt中QGraphicsView总体架构学习

前沿 前段时间学习了下如何在QGraphicsView架构中绘制刻度尺,主要是与OnPainter中进行比较的,那么今天就来详细讲解下我对QGraphicsView框架的认知吧~ 最近一段时间想学习下,如果我有不正确的,欢迎留言探讨哟~ QGraphicsView架…

kubeSphere DevOps自定义容器环境JDK11

kubeSphere DevOps自定义容器环境JDK11 🍂前言🍂增加JDK11容器环境🍁检查是否成功 🍂不生效的原因排查🍁按步骤执行如下命令 🍂前言 kubeSphere 版本v3.1.1 遇到问题:kubeSphere默认支持容器只有JDK8,目前…

自监督深度学习技术

一、定义 自监督学习(SSL)是机器学习的一种范式,用于处理未标记数据以获取有用的表示,以帮助下游学习任务。SSL方法最显著的特点是它们不需要人类标注的标签,这意味着它的训练完全基于由未标记的数据样本组成的数据集…

【架构】API接口安全防护救命的11招

前言 如何保证接口的安全性? 根据多年的工作经验,给大家介绍一下保证接口安全的一些小技巧,希望对你会有所帮助。 1 参数校验 保证接口安全的第一步,也是最重要的一步,需要对接口的请求参数做校验。 如果我们把接口请求参数的校验做好了,真的可以拦截大部分的无效请求…

深度学习|交叉熵

文章目录 什么是交叉熵如何构造信息量的函数关于 C 1 C_1 C1​参数的选择关于 C 2 C_2 C2​参数的选择 一个系统的熵如何比较两个系统的熵交叉熵在神经网络中的应用参考 什么是交叉熵 熵是用来衡量一个系统的混乱程度,混乱程度也其实代表着整个系统内部的不确定性。…

在微信公众号上怎么实现拼团功能

拼团魅力:微信公众号上的拼团功能如何助力营销 一、引言 在这个数字化时代,微信公众号成为了企业与消费者互动的重要平台。而拼团功能作为微信营销的一大利器,为企业带来了巨大的商业价值。那么,如何在微信公众号上实现拼团功能&…

极盾故事|某车企敏感数据风险监测平台,揭开48个高风险账号的神秘面纱

极盾科技助力某汽车科技公司,构建敏感数据实时风险监测平台,通过用户行为和实体分析系统(UEBA),打通数据和安全桥梁,实现敏感数据流动风险行为监控,半年内共计检测78万条内部员工的应用日志&…

AlexNet论文精读

1:该论文解决了什么问题? 图像分类问题 2:该论文的创新点? 使用了大的深的卷积神经网络进行图像分类;采用了两块GPU进行分布式训练;采用了Relu进行训练加速;采用局部归一化提高模型泛化能力;…

docker 容器添加指定网络地址

docker 容器添加指定网络地址 在搭建halo博客时,准备让 halo、mysql8.1、nginx 三个容器在同一个网段中,并指定IP。 实现docker内部容器之间网络互通。 查看容器网络信息命令 docker inspect 容器名各容器部署成功后网络效果如下: nginx …

Qt/C++摄像头采集/二维码解析/同时采集多路/图片传输/分辨率帧率可调/自动重连

一、前言 本地摄像头的采集可以有多种方式,一般本地摄像头会通过USB的方式连接,在嵌入式上可能大部分是CMOS之类的软带的接口,这些都统称本地摄像头,和网络摄像头最大区别就是一个是通过网络来通信,一个是直接本地通信…

Camunda Rest API

客户端像调用本地方法一样调用引擎中的接口。 https://docs.camunda.org/manual/7.17/reference/rest/ 一&#xff1a;pom.xml <dependency><groupId>org.camunda.community.rest</groupId><artifactId>camunda-platform-7-rest-client-spring-boot-…

通义千问Qwen-72B-Chat基于PAI的低代码微调部署实践

作者&#xff1a;熊兮、求伯、一耘 引言 通义千问-72B&#xff08;Qwen-72B&#xff09;是阿里云研发的通义千问大模型系列的720亿参数规模模型。Qwen-72B的预训练数据类型多样、覆盖广泛&#xff0c;包括大量网络文本、专业书籍、代码等。Qwen-72B-Chat是在Qwen-72B的基础上…

一起玩儿物联网人工智能小车(ESP32)——24. 变量与函数(二)

摘要&#xff1a;本文介绍变量和函数的基本知识 在前面一篇中了解了变量&#xff0c;接着就来了解一下函数。函数是程序中的一个关键概念&#xff0c;它可以简化程序的编写&#xff0c;使代码更加模块化、可复用&#xff0c;提高程序的可读性。其实在之前已经多次遇到函数了&am…

Android AAudio

文章目录 基本概念启用流程基本流程HAL层对接数据流计时模型调试 基本概念 AAudio 是 Android 8.0 版本中引入的一种音频 API。 AAudio 提供了一个低延迟数据路径。在 EXCLUSIVE 模式下&#xff0c;使用该功能可将客户端应用代码直接写入与 ALSA 驱动程序共享的内存映射缓冲区…

Thingsbaord采用redis缓存(自用)

在CentOS系统上&#xff0c;您可以通过以下步骤使用yum安装Redis&#xff1a; 添加EPEL仓库&#xff1a; 首先&#xff0c;需要添加EPEL&#xff08;Extra Packages for Enterprise Linux&#xff09;仓库&#xff0c;因为Redis可能不在默认的CentOS仓库中。使用以下命令添加EP…

iOS 应用上架指南:资料填写及提交审核

摘要 本文提供了iOS新站上架资料填写及提交审核的详细指南&#xff0c;包括创建应用、资料填写-综合、资料填写-IOS App和提交审核等步骤。通过本指南&#xff0c;您将了解到如何填写正确的资料&#xff0c;并顺利通过苹果公司的审核。 引言 在开发iOS应用后&#xff0c;将其…

在IntelliJ IDEA上使用通义灵码(TONGYI Lingma)

参考链接&#xff1a; 通义灵码产品介绍_智能编码助手_AI编程_云效(Apsara Devops)-阿里云帮助中心 【IDEA如何使用通义灵码&#xff1f;】_idea 通义灵码-CSDN博客 1. 简介 1.1 定义 通义灵码&#xff0c;是阿里云出品的一款基于通义大模型的智能编码辅助工具&#xff0c;提…

【大数据进阶第三阶段之Datax学习笔记】阿里云开源离线同步工具Datax类图

【大数据进阶第三阶段之Datax学习笔记】阿里云开源离线同步工具Datax概述 【大数据进阶第三阶段之Datax学习笔记】阿里云开源离线同步工具Datax快速入门 【大数据进阶第三阶段之Datax学习笔记】阿里云开源离线同步工具Datax类图 【大数据进阶第三阶段之Datax学习笔记】使用…

密码学(一)

文章目录 前言一、Cryptographic Primitives二、Cryptographic Keys2.1 Symmetric key cryptography2.2 asymmetric key cryptography 三、Confidentiality3.1 Symmetric key encryption algorithms3.2 asymmetric key block ciphers3.3 其他 四、Integrity4.1 secure hashing …

【安卓模拟器】雷电模拟器9 v9.0.64 绿色版(免安装版,一键绿化)

下载地址 极核GetShell 简介 雷电模拟器9是一款安卓模拟器&#xff0c;支持安卓9版本。安卓模拟器除了能够运行游戏娱乐&#xff0c;对于渗透测试&移动安全测试也有举足轻重的作用。 软件截图 绿化教程 视频教程 下载地址提供了视频绿化教程&#xff0c;有需要的可以…