Hugo博客搭建
Table of Contents
前言 #
还记得第一次搭建博客是在大二,当时一个人带着电脑到教室学习算法,但是遇到苦难习惯性地开始不务正业,去折腾一些更简单的东西来寻求心理安慰。兜兜转转几年过去了,前前后后折腾了不少东西,但是技术也没有精进多少。现在想来,没有去挑战困难是大学最后悔的一件事。另外一件遗憾的事是很少记录生活,一些当初很感动的事情,现在也越来越模糊了。
这也是我这次重新搭建博客的初衷,记录下自己的脚步,希望未来读档的时候不至于指针越界。
静态博客主流方案 #
工具 | Jekyll | Hexo | Hugo | |
---|---|---|---|
介绍 | Jekyll 是一个静态网站生成器,基于Ruby语言。 | 快速、简洁且高效的博客框架。 | Hugo是由Go语言实现的静态网站生成器。简单、易用、高效、易扩展、快速部署。 |
优点 | GitHub 支持好,历史最长,文档完备。 | 国人开发,入门简单。 | 基于Golang,生成速度快,社区活跃。 |
缺点 | 基于Ruby,在三种生成器中速度最慢。需要一定Ruby基础。 | 基于Node.js,生成速度一般。 | 入门简单,深入需要阅读英文文档。 |
曾经在V2EX看到过一个帖子说:
一个是一群搞前端的人做的,一个是一群搞后端的人做的,特色都十分鲜明。
深度体验下来,我觉得说的很有道理。
Hugo 安装 #
Hugo官方文档地址: Quick start。安装照着教程来就可以了。
如果使用Homebrew安装只需要:
brew install hugo
即可完成。
安装完成后输入:
hugo version
来确认是否安装完成。
新建Hugo网站 #
hugo new site site_name
cd site_name
git init
然后选择使用git submodule的方式来安装主题(还可以用go module的方式,不过我更喜欢git submodule)。
设置主题 #
接下来去 Hugo主题网站挑选自己喜欢的主题。个人比较喜欢简洁现代风一点的:
- blowfish
- mini
- doIt
这里我选择的是 blowfish。
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
接下来就是主题相关的配置了,你可以像我一样在终端的博客根目录输入code .
进入VS Code进行配置。需要参考
blowfish官方文档(英文文档,需要适应一下)。
根据文档内容,首先把现在根目录的config.toml
文件删除,然后拷贝themes/blowfish/config/_default/
目录下的所有toml
后缀的文件到博客根目录下的config/_default/
目录中。
然后你就能启动项目看见主题的效果了:
hugo server
通过 http://localhost:1313 访问。
添加文章 #
首先先不考虑目录结构和文章分类等问题,跟着敲一遍下列命令新建第一篇文章:
hugo new content posts/my-first-post.md
Hugo会在content/posts
目录下新建my-first-post.md
文件,你可以随便写入些内容,符合markdown格式即可。比如:
+++
title = '需要写点什么东西'
date = 2023-10-14T11:56:21+08:00
draft = true
+++
不仅需要输入,更需要输出。做一个生产者。
然后在终端输入:
# -D 意味着生成的内容包括草稿,如上所示,元数据里我加了一行draft = true,表明这个文件是一个草稿,如果不加-D参数的话不会被生成。
hugo server -D
命令重新生成并启动自带的服务器。通过 http://localhost:1313 访问查看效果。
打包 #
命令很简单:
hugo
打包的资源放在/public
目录下。
接下来 #
好了,这就是Hugo搭建博客的主要过程,但是如果要想写的得心应手,其实还需要阅读一下Hugo关于内容管理和模板等部分的文档。
如果想要发布到网络上,还需要自己购买服务器,申请备案等等。不过GitHub Pages给我们提供了另一种选择,你可以不需要服务器,不需要购买域名,甚至不需要多少额外的配置就可以把博客发布到互联网上。
欢迎阅读这个系列的下一章节。