Go猜想录
大道至简,悟者天成
博客诞生记

TL;DR

使用自定义指令hn,含义是hugo deploy。自动构建两个网站luxcgo.github.io和luxcgo.com的静态文件,分别是用于国外和国内访问,然后推送到我的私有仓库中,通过submodule功能同步到公有仓库。随即触发github action构建网站镜像推送到私有镜像仓库中,我的云服务器检测到镜像更新自动拉取完成网站更新。

技术选型

  • 前端:静态博客hugo

  • 主题:参数尽量两种主题都可以使用

    •   ---
        title: ""
        date: 2021-11-15T01:39:12+08:00
        draft: true
      
        title: Git
        weight: 1
        bookToc: false
        bookHidden: true
        bookCollapseSection: true
        ---
      
    • diary作为日常发布

    • book作为整合发布

  • 后端:服务器选择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

图片存储

  1. 本地储存 + 图片压缩
  2. PicGo自动上传 + 水印插件
  3. alist
  4. obsidian

日期

{{date:YYYY-MM-DD}}T{{time:HH:mm:ss}}+08:00

其他

参考资料

  1. Unknwon.中文博客搬新家
  2. Beyond the Void
  3. Diary theme customized
  4. ZHENG Zi’ou.Blog养成记
  5. Deploy script
  6. Use Typora from Shell or Cmd
  7. bash alias怎么解析传入的参数的?

知识共享许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。