Termux+hugo搭建博客全过程
目录
1. 安装termux
- 安装termux F-droid下载termux
- 国光博客提供的termux全面教程
2 termux部分
先换源提高termux下载速度
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list
sed -i 's@^\(deb.*games stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/game-packages-24 games stable@' $PREFIX/etc/apt/sources.list.d/game.list
sed -i 's@^\(deb.*science stable\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/science-packages-24 science stable@' $PREFIX/etc/apt/sources.list.d/science.list
pkg update
termux安装需要用到的软件包
pkg install -y git openssh hugo
新建hugo项目
hugo new site blog
安装主题(目前我用的是loveit)
cd blog
git clone https://github.com/dillonzq/LoveIt.git themes/LoveIt
配置config.toml
这部分参阅 主题文档 - 基本概念
hugo命令
- 新建项目
hugo new [自定义文件夹名称]
- 新建文章
hugo new posts/test.md
- 生成静态文件
hugo
信息生成的静态文件保存在/public文件夹
3 部署到github
github创建同名仓库 你的用户名.github.io
tremux 创建 rsa密钥
cd
ssh-keygen -t rsa -C "你的邮箱"
查看公钥
cat ~/.ssh/id_rsa.pub
添加公钥到githubKEY
删除public文件夹,克隆仓库为public
git clone git@github.com:yourname/yourname.github.io.git /blog/public
技巧
克隆时用ssh链接
termux生成静态文件
cd ~/blog && hugo
上传github
cd ~/blog/public
git add -A ;git commit -am 'First Commit' ; git push
4 配置algolia搜索
安装 atomic-algolia 包
npm init // 不懂的就回车好了
npm install atomic-algolia --save
修改目录下的 package.json 文件,在 scripts 下添加 “algolia”: “atomic-algolia”
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"algolia": "atomic-algolia"
},
注意 “test” 那一行末尾有个英文逗号,不要漏了。
根目录下新建 .env 文件,内容如下:
ALGOLIA_APP_ID=你的Application ID
ALGOLIA_INDEX_NAME=你的索引名字
ALGOLIA_INDEX_FILE=public/algolia.json
ALGOLIA_ADMIN_KEY=你的Admin API Key
注意替换你自己Algolia索引的信息。 另外特别注意 ALGOLIA_ADMIN_KEY 可以用来管理你的索引,所以尽量不要提交到公共仓库。 一般的做法是在你的自动化部署工具中设置环境变量,比如说本站就是在 Travis CI 中设置环境变量。
上传索引的命令
你可以本地执行 npm run algolia
查看运行效果:
可以看到我们成功添加了记录。 后续就是把下面的命令加到你的部署脚本即可:
npm install
npm run algolia
// 在hugo命令后面执行
至此,如果你运行 npm run algolia 没有报错的话,就可以继续下一步了。 同样的,如果有问题欢迎在下面留言。