博客诞生记
TL;DR
使用自定义指令hn,含义是hugo deploy。自动构建两个网站luxcgo.github.io和luxcgo.com的静态文件,分别是用于国外和国内访问,然后推送到我的私有仓库中,通过submodule功能同步到公有仓库。随即触发github action构建网站镜像推送到私有镜像仓库中,我的云服务器检测到镜像更新自动拉取完成网站更新。
技术选型
-
前端:静态博客hugo
-
主题:参数尽量两种主题都可以使用
-
后端:服务器选择caddy 2
-
运维:
- 使用traefik签发证书和反向代理
- 使用deploy脚本自动构建静态文件和推送
- 使用github action在推送时自动构建镜像并分别推送
- 使用git submodule
- luxcgo.github.io
- luxcgo.com
- 使用watchtower自动更新网站
定制化
评论系统
自动化
vim ~/.zshrc
# 自动化创建并打开文件
# hn 文件名 (代表 hugo new posts/文件名.md)
alias hn='_hn(){ cd /Users/lucas/Documents/blog && hugo new posts/$1.md && open -a typora /Users/lucas/Documents/blog/content/posts/$1.md; }; _hn'
# 自动化部署
# hd (代表 ./deploy)
alias hd='_hd(){ cd /Users/lucas/Documents/blog && ./deploy; }; _hd'
source ~/.zshrc
图片存储
日期
{{date:YYYY-MM-DD}}T{{time:HH:mm:ss}}+08:00
其他
- favicon
- Google Analytics
- 谷歌收录
- 不蒜子
- 搜索功能
- utterances增加定制化label
- 新建comment repo
- 文章权重
参考资料
- Unknwon.中文博客搬新家
- Beyond the Void
- Diary theme customized
- ZHENG Zi’ou.Blog养成记
- Deploy script
- Use Typora from Shell or Cmd
- bash alias怎么解析传入的参数的?
本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。