Pure 一个基于 Github Discussion 的极简博客 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
leetao94
V2EX    分享创造

Pure 一个基于 Github Discussion 的极简博客

  •  
  •   a href="/member/leetao94">leetao94
    lt94 2022-10-29 13:28:33 +08:00 3708 次点击
    这是一个创建于 1127 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    在过去一年,我一直使用 github action + hexo 的方式去自动化部署我的博客到 github pages ,这种方式的好处就是,你只需要配置好一次将代码仓库,然后你就只需要一个浏览器然后写 hexo 格式的 markdown 文件就够了。

    下面是我的构建历史记录

    构建历史记录

    到目前位置累计构建了 93 次,当然并不是意味着我写了 93 篇,更新也会导致文章重新构建。这一切似乎看着还不错,但是有几点一直让我觉得很痛苦:

    1. hexo markdown 文章开头的格式
    2. 上传图片
    3. 文章的更新

    hexo 有很多固定的格式,有时候每次写文章,我都不得不去找之前的文章把格式复制过来,然后在重新修改一下。除此之外,就是上传图片这件事情了,尝试过各种图床的方案,有的图床也很好用,但是基本上都需要打开他们的网站,或者借助三方的软件然后将图片上传,这种中断,让我觉得很难受,所以我想有没有更好的方式去写博客。

    调研

    作为一个程序员,github 是我最喜欢逛的网站了,所以我在想有没有可以基于 github 的仓库构建的网站,然后 github issue 和 github discussion 就成了我的备选项了,所以我检索了这两个关键词

    github issue bloggithub discussion blog

    最后让我发现了 浮之静

    浮之静

    网站挺好看的,但是但是没有部署文档,遂放弃了。

    折腾

    没办法了,没有枪没有炮,敌人给我们造,没有合适的项目,只好自己动手撸了。牺牲了我两个工作日晚上的休息时间,总算把 Pure 初版构建出来了。

    Pure

    部署也很简单,golang 项目通用部署步骤,只需要部署前配置一下四个环境变量(一个非必须的),然后启动项目,配置一下 nginx 就大功告成了。

    20 条回复    2022-11-05 23:09:35 +08:00
    ltkun
        1
    ltkun  
       2022-10-29 13:37:49 +08:00 via Android
    star 先
    leetao94
        2
    leetao94  
    OP
       2022-10-29 13:38:50 +08:00
    @ltkun 你已经具备了一个优秀程序员的基本素养了[狗头]
    fox233
        3
    fox233  
       2022-10-29 13:57:56 +08:00
    球详细部署教程 什么变量阿
    leetao94
        4
    leetao94  
    OP
       2022-10-29 14:08:06 +08:00
    @fox233 稍后补充一下部署教程
    leetao94
        5
    leetao94  
    OP
       2022-10-29 14:09:01 +08:00
    @fox233 其实就是你的 github 用户名 ,你要使用的 github discussion 对应的仓库名 以及最后的 GITHUB_ACCESS_TOKEN
    lllllliiii
        6
    lllllliiii  
       2022-10-29 15:57:31 +08:00
    我前天刚好在推特上看到过 op 发的推,哈哈。

    其实可以通过 github action 可以做到类似的事情。

    github action 监听 issue or discussion 然后生成文件然后上传。然后配合 hexo or hugo 。
    leetao94
        7
    leetao94  
    OP
       2022-10-29 16:08:43 +08:00
    @fzdwx 哈哈,这么巧吗~嗯嗯 一开始也考虑这个方案了,不过有个服务器,就折腾一下了~
    whileFalse
        8
    whileFalse  
       2022-10-29 17:58:43 +08:00
    你可以用 github action 自动添加 markdown 开头的格式文本,以及自动上传图片到图床啊。造轮子有啥用。。。
    leetao94
        9
    leetao94  
    OP
       2022-10-29 18:46:59 +08:00 via iPhone
    @whileFalse 是的 没错 您说的对 造轮子没用 浪费您的宝贵时间了
    saimax
        10
    saimax  
       2022-10-29 23:33:04 +08:00 via iPhone
    顶大佬
    cheung
        11
    cheung  
       2022-10-30 00:12:12 +08:00
    支持大佬,不错,一直想要个基于 github discuz 的博客。
    wangyunzi
        12
    wangyunzi  
       2022-10-30 10:39:27 +08:00
    @whileFalse 请问你是如何实现的啊
    Mr54
        13
    Mr54  
       2022-10-30 10:45:34 +08:00
    确实 , 图床用的真的很头大 , 有没有什么好用的图床推荐的
    zmxnv123
        14
    zmxnv123  
       2022-10-30 14:53:08 +08:00
    简单看了下,这个不是基于 github 的吗,为什么还需要 nginx ,需要有自己的服务器?
    leetao94
        15
    leetao94  
    OP
       2022-10-30 15:28:12 +08:00 via iPhone
    @zmxnv123 不是静态的博客~需要部署,后面考虑支持静态
    devrsi0n
        16
    devrsi0n  
       2022-10-30 20:31:09 +08:00
    博客需要评论组件的话,最近我开发的 Chirpy 已支持 Docker 部署: https://github.com/devrsi0n/chirpy , 欢迎体验
    leetao94
        17
    leetao94  
    OP
       2022-10-30 20:32:25 +08:00 via iPhone
    @devrsi0n 赞,我研究一下
    stevenshum
        18
    stevenshum  
       2022-10-31 09:13:12 +08:00
    还是喜欢 github action 的部署方式,用服务器反而多了一步
    leetao94
        19
    leetao94  
    OP
       2022-10-31 09:25:55 +08:00
    @stevenshum 等我后面支持静态部署就可以用 github action 了
    nipao
        20
    nipao  
       2022-11-05 23:09:35 +08:00
    github action 监听 issue 或 discussion 这不已经是被玩滥了的方案了么
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2503 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 04:41 PVG 12:41 LAX 20:41 JFK 23:41
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86