使用mkdocs快速部署上线静态站点到Github

news2024/11/28 5:32:48

背景

mkdocs是一种方便地生成站点的工具,相比hugo、hexo等个人博客而言,mkdocs更加简便、轻量级,可以快速帮助部署上线类似个人技术本(notebook,wiki)之类的站点。并且支持默认支持站点内搜索,便于快速查找内容。

下面具体介绍如何快速创建站点(省略mkdocs的下载安装)

新建站点

创建好文件夹(即站点目录),进入其中。使用mkdocs new .将当前目录作为站点目录,然后修改mkdocs.yml,比如下面是我自己的技术笔记本:

repo_url : https://github.com/c01dkit/tech-blog
site_name: c01dkit's tech blog
site_author: c01dkit
site_url: https://tech.c01dkit.com
theme:
  name: material
  features:
    - content.code.copy
    - content.code.annotate
docs_dir: docs
copyright: '2023 Content provided by c01dkit'


nav:
  - 首页: index.md
  - Docker: docker.md
  - 软件环境配置: envs.md
  - 编程语言:
    - Python: python.md
    - 优雅编程: code-gracely.md
  - 程序逆向:
    - IDA基础: IDA.md
    - 逆向基础: reverse-basic.md
    - 逆向高阶: reverse-advanced.md
  - 网课学习笔记:
    - pwn-college:
      - CSE 365: pwn-college-cse365-spring2023.md
  - 其他杂项:
    - 模糊测试: fuzzing.md
    - 论文学习: picking-ups.md
    - 服务器端口复用: porting.md
    - ChatGPT: try-chatgpt.md
    - linux shell命令学习: linux-shell.md

    
markdown_extensions:
  - attr_list
  - md_in_html
  - pymdownx.superfences
  - pymdownx.critic
  - pymdownx.caret
  - pymdownx.keys
  - pymdownx.mark
  - pymdownx.tilde

其中nav部分用于设置页面左侧的目录栏,可以完全自己制定展开集,上面的nav生成的页面是这样的:
在这里插入图片描述
其中每个页面是一个md文件,都要放在docs目录下。

然后在当前目录运行mkdocs serve可以在本地http://127.0.0.1:8000预览结果。

部署站点

本地先初始化好仓库,依次运行:

  1. git init进行仓库初始化
  2. git add .将当前所有文件纳入管理
  3. (可选)新建.gitignore文件,写入site/,防止后续mkdocs生成的站点直接上传过去
  4. git commit -m "first commit"初始提交

github远程建立仓库:

  1. 在github新建一个空仓库
  2. 按github上的提示进行关联,比如git remote add origin git@github.com:xxx/xxx.gitgit push -u origin.

构建本地站点并自动推送到远程gh-pages分支:mkdocs gh-deploy --clean。这条命令会自动生成站点,并创建gh-pages分支(若没有),并推送到远程仓库。

随后在github仓库选择Settings,选择左侧Pages,然后Build and deployment部分选择Deploy from a branch,选择对应的gh-pages的root。

然后等待构建即可

自定义域名

上述默认构建在https://<username>.github.io/<websitename>里,如果希望自定义域名,可以在docs里放上CNAME,里面写上自定义域名,然后setting里填上域名;同时需要在域名管理添加github的CNAME解析。

比如:
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

网络安全自学路线

很多人上来就说想学习黑客&#xff0c;但是连方向都没搞清楚就开始学习&#xff0c;最终也只是会无疾而终&#xff01;黑客是一个大的概念&#xff0c;里面包含了许多方向&#xff0c;不同的方向需要学习的内容也不一样。 算上从学校开始学习&#xff0c;已经在网安这条路上走…

基于ensp的mpls vpn跨域optionA方案(分公司之间不能互访但是能访问总部场景)

目录 一 实验拓扑 二 实验要求 三 实验分析 四 实验配置说明 4.1完成正常ip地址配置&#xff0c;ISP内部使用ospf协议和mpls ldp协议 4.2 PE和CE之间起ebgp邻居 4.3 PE和PE之间起mpbgp邻居 4.4 PE和CE、ASBR之间设置VRF来进行RT值的过滤&#xff0c;选择合适的RT值来完…

网络编程:TCP socket

文章目录 阅读前导 服务端定义日志框架成员属性服务端框架 初始化服务器创建套接字绑定开启监听 运行服务器netstat 工具获取连接和通信准备通信逻辑 单进程服务端函数&#xff08;version1&#xff09;telent 工具测试 多进程服务端&#xff08;version2&#xff09;创建子进程…

手把手教你学习IEC104协议和编程实现 十四-文件操作之目录操作

文件服务也算是最后一个系统的大章节了。早期的IEC104软件仅实现了基本的通讯,也就是我们常说的3遥,对于定值和文件的操作都很少提及。 首先我们先要看看文件都包含那些。 文件包含的内容 故障录波文件 故障录波文件我们单独开一章来讲解。包含通讯及文件的格式 历史数据…

多核系统内存假共享问题

多核处理器&#xff08;SMP&#xff09;系统中&#xff0c; 每一个处理器都有一个本地高速缓存。内存系统必须保证高速缓存的一致性。当不同处理器上的线程修改驻留再同一高速缓存中的变量时就会发生假共享(false sharing)&#xff0c;结果导致高速缓存无效&#xff0c;并强制更…

长期封闭环境中与积极情绪相关的肠道菌群

谷禾健康 近年来&#xff0c;随着微生物群-肠-脑轴研究的深入&#xff0c;越来越多证据表明&#xff0c;微生物群-肠-脑轴在调节大脑功能方面发挥着关键作用&#xff0c;尤其是在情绪处理和行为方面。然而&#xff0c;肠道微生物群与长期封闭环境中的心理变化之间的相关性仍知之…

小魔推助力实体行业短视频创作,打爆UGC素人流量!

最近不止一次的和大家讲到UGC的玩法&#xff0c;相信很多朋友也有了一定的认知&#xff0c;UGC简单来说&#xff0c;就是通过用户来生产原创内容&#xff0c;通过实体店的门头、环境、特色服务等相关内容&#xff0c;并且带有门店地址发布&#xff0c;就可以提升实体商家的POI热…

tensorrt

【TensorRT】动态batch进行推理_tensorrt 动态batch_there2belief的博客-CSDN博客 https://www.cnblogs.com/harrymore/p/15387117.html 1.动态batch 2.tensor内存管理 3.

《河北教育》期刊简介及投稿邮箱

《河北教育》期刊简介及投稿邮箱 主管单位:河北省教育厅 主办单位:河北省教育宣传中心 国际刊号ISSN&#xff1a;1004-6208&#xff1b;国内刊号CN&#xff1a;13-1036/G4&#xff1b;邮发代号&#xff1a;18-67 出版周期&#xff1a;月刊 出版地&#xff1a;河北省石家庄…

pytorch中backward()函数与gradient 参数详解

矩阵乘法的例子1 以下例来说明backward中参数gradient的作用 注意在本文中表示矩阵乘法&#xff0c;*表示对应元素相乘 求A求偏导 试运行代码1 import torch# [1,2][2*3][1,3] A torch.tensor([[1., 2.]], requires_gradTrue) B torch.tensor([[10., 20., 30.], [100., 20…

『赠书活动 | 第五期』《人工智能数学基础》

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; 『赠书活动 &#xff5c; 第五期』 本期书籍&#xff1a;《人工智能数学基础》 赠书规则&#xff1a;评论区&#xff1a;点赞&#xff5c;收藏&#xff5c;留言 评论…

DAP-seq技术鉴定葡萄MADS-box转录因子VvMADS28的靶基因,揭示葡萄胚珠发育的调控机制

葡萄是一种营养丰富、美味可口的水果&#xff0c;深受世界各地消费者的喜爱。近年来&#xff0c;无籽葡萄也越来越受大家的欢迎&#xff0c;因此&#xff0c;无籽葡萄品种的培育成为一个重要的育种目标&#xff0c;而了解葡萄种子发育的分子遗传调控机制对于无籽栽培品种的培育…

Kyligence Zen 产品体验-好用的指标平台

文章目录 一、Kyligence Zen概念一、BI发展历史1.以报表为核心的IT响应式服务2.以宽表为核心的自助可视化分析3.以指标为核心的可视化分析、增强分析 二、什么是Kyligence Zen&#xff1f;1.官网的介绍2.个人的理解 二、产品体验一、创建账号二、指标1.直接创建指标2.导入指标数…

postgresql集群编译安装

postgreSQL集群部署1环境准备&#xff08;三台服务器全部执行&#xff09; 2.1.1 准备三台虚拟机 服务器名称 服务器IP 描述 Pgsql-0 xxx.xxx.xxx.xxx master节点 Pgsql-1 xxx.xxx.xxx.xxx slave1节点 Pgsql-2 xxx.xxx.xxx.xxx slave2节点 2.1.2 安装编译需要的相…

ANR实战案例 - 通用方法总结

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 文章目录 系列文章目录前言一、业务耗时1.登录Dialog优化2.子线程更新通知栏 二、频繁调用1.底部Tab资源初始…

【LLM系列之LLaMA】LLaMA: Open and Efficient Foundation Language Models

论文题目&#xff1a;《LLaMA: Open and Efficient Foundation Language Models》 论文链接&#xff1a;https://arxiv.org/pdf/2302.13971.pdf github链接&#xff1a;https://github.com/facebookresearch/llama/tree/main huggingface链接&#xff1a;https://huggingface.c…

[离散数学] 函数

文章目录 函数判断函数的条件复合函数复合函数的性质 逆函数 函数 判断函数的条件 dom F A ⇔ \Leftrightarrow ⇔所有x 都有 F&#xff08;x&#xff09;与之对应 有唯一的与其对应 < x , y > ∈ f ∧ < y , z > ∈ f ⇒ y z <x,y>\in f \land <y,z…

【C++】2. 进入面向对象 - 类和对象的初步认识

专栏导读 &#x1f341;作者简介&#xff1a;余悸&#xff0c;在读本科生一枚&#xff0c;致力于 C 方向学习。 &#x1f341;收录于 C专栏&#xff0c;本专栏主要内容为 C 初阶、C 进阶、STL 详解等&#xff0c;持续更新中&#xff01; &#x1f341;相关专栏推荐&#xff1a;…

TikTok新手做什么账号,Tiktok类目怎么选

有很多刚入驻TikTok的小白不知道要选择什么类目才比较容易起量。看完这篇后&#xff0c;相信你们的疑惑就会烟消云散。选择对了类目对以后的产品带货有很大的促进作用&#xff0c;今天我给你们分享6种适合TikTok小店运营的账号类型&#xff0c;以及一些比较推荐的类目。 TikTok…

测试和调试之Python高级篇

测试和调试 在软件开发过程中&#xff0c;测试和调试是非常重要的环节。测试用于验证代码的正确性和可靠性&#xff0c;而调试则是为了找到并解决代码中存在的问题。下面将会详细介绍单元测试、集成测试、断言、测试框架、调试工具和技巧。 单元测试 单元测试是指对软件中的…