Github Actions + Hexo + Github Page 搭建博客 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
waterlaw
V2EX    分享发现

Github Actions + Hexo + Github Page 搭建博客

  •  1
     
  •   waterlaw 2019-10-16 05:42:37 +08:00 7018 次点击
    这是一个创建于 2191 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Github Page 只能在 master 分支发布, 且仓库名必须为[用户名]-github.io, 所以 Hexo 配置我放在 dev 分支,github action

    定义了一个 workflow, 放在项目的 .github/workflows/nodejs.yml , 使用执行完 yml workflow 流程就会生成到 master 分

    支, 执行完脚本的 master 分支就是博客的 html/css/js。

    参考 github action https://github.com/JamesIves/github-pages-deploy-action,

    我的 blog 配置仓库 https://github.com/water-law/water-law.github.io

    yml: https://github.com/water-law/water-law.github.io/blob/dev/.github/workflows/nodejs.yml

    ps: 记得把 头像->profile->Developer settings->Personal access tokens 复制到项目 settings->Secrets

    github action: nodejs.yml 如下

    name: GitHub Actions Build and Deploy Demo on: push: branches: - dev jobs: build-and-deploy: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@master - name: Build and Deploy uses: JamesIves/github-pages-deploy-action@master env: ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }} BASE_BRANCH: dev BRANCH: master FOLDER: public BUILD_SCRIPT: npm i -g hexo && npm install && hexo generate 
    21 条回复    2019-10-16 12:01:01 +08:00
    waterlaw
        1
    waterlaw  
    OP
       2019-10-16 06:10:59 +08:00 via Android
    之前用 hexo 改完 md 都要 deploy, 现在 deploy 动作由 github action 来完成, 新建公有项目会看到多了 Actions 哦, 今天刚更新的。
    loading
        2
    loading  
       2019-10-16 07:43:15 +08:00 via Android
    周末看看,谢谢
    quqiuzhu
        3
    quqiuzhu  
       2019-10-16 07:53:28 +08:00 via Android
    travis 一直是免费的,github actions 可以用,但有收费风险
    orzorzorzorz
        4
    orzorzorzorz  
       2019-10-16 07:58:28 +08:00
    这还要手动 push 到 dev 才行,不如加上 schedule 定时触发
    https://github.com/orzyyyy/memo/blob/master/.github/workflows/deploy.yml
    orzorzorzorz
        5
    orzorzorzorz  
       2019-10-16 08:03:19 +08:00
    1. JamesIves/github-pages-deploy-action 是 rebase 到目标分支的。比如这里的 BRANCH 是 master,这分支上有 1000 个 commit,那就会 rebase master 到 gh-pages,gh-pages 上会多出 1000 个 commit,主页的绿点特别难看。https://github.com/orzyyyy,看看这主页,有两千条 commit 是这 action 产生的。
    2. deploy 如果中途报错,这 action 会直接帮你把 gh-pages 这个分支删了,不知道为什么。

    所以 deploy 的 action,我推荐用 https://github.com/peaceiris/actions-gh-pages
    asiaon123
        6
    asiaon123  
       2019-10-16 08:05:33 +08:00 via Android
    兄得,这种没有营养的东西不要发出来了
    waterlaw
        7
    waterlaw  
    OP
       2019-10-16 08:19:40 +08:00 via Android
    @orzorzorzorz 是 github page 更新前会把就的删了,action 其实就是 docker 容器而已。
    waterlaw
        8
    waterlaw  
    OP
       2019-10-16 08:25:03 +08:00 via Android
    docker 的 entrypoint.sh 脚本会先将原有文件 git rm
    vsitebon
        9
    vsitebon  
       2019-10-16 08:46:40 +08:00
    @asiaon123 相比起同页面的其它某些主题,这个反而显得比较有营养了
    MonoLogueChi
        10
    MonoLogueChi  
       2019-10-16 08:55:17 +08:00 via Android
    gh-pages 分支也可以用于 GitHub Page 啊。还有,.nojekyll 不创建一个吗
    thet
        11
    thet  
       2019-10-16 08:57:48 +08:00 via iPhone
    我是 actions + hugo +firebase
    hawhaw
        12
    hawhaw  
       2019-10-16 08:57:55 +08:00 via Android
    @asiaon123 这个还好吧,不是那么没有营养的东西
    waterlaw
        13
    waterlaw  
    OP
       2019-10-16 09:04:26 +08:00 via Android
    @hawhaw 其实就是 github 在后台帮你 checkout 代码放到 docker 执行, 有点像 docker-compose 有没有,期待很久的功能终于出了()
    bequt
        14
    bequt  
       2019-10-16 09:57:37 +08:00
    @thet firebase 文档吗? 好像免费一个月 10gb 流量传输
    bequt
        15
    bequt  
       2019-10-16 09:58:00 +08:00
    @thet 稳定么
    asiaon123
        16
    asiaon123  
       2019-10-16 10:04:08 +08:00 via Android
    @vsitebon 这个不能这么比,这种文章都烂大街,还一直发有什么意义
    asiaon123
        17
    asiaon123  
       2019-10-16 10:04:32 +08:00 via Android
    @hawhaw 烂大街的东西多发无益
    waterlaw
        18
    waterlaw  
    OP
       2019-10-16 10:38:49 +08:00 via Android
    @asiaon123 hexo 的确烂大街, 服务器到期了,本来想把 django 项目放上去, 使用 python3 自带 sqlite, 但 github 这次出的 action 可能还是给纯前端用的, 只能说一般般,没啥惊喜。
    bequt
        19
    bequt  
       2019-10-16 10:59:51 +08:00
    @waterlaw 自己思考写个发出来好些吧, 用别人的, 套一下就得了, 没什么 action 营养
    waterlaw
        20
    waterlaw  
    OP
       2019-10-16 11:23:43 +08:00 via Android
    @bequt github action 就这样, 我已经把文档看完,docker + 脚本, 可惜是个坑, 想部署有数据库的最好还是买个服务器, 自己用容器, 世界上没有免费的午餐,github 给的也只是简单的 running.
    thet
        21
    thet  
       2019-10-16 12:01:01 +08:00 via iPhone
    @bequt #15 非常稳定
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5350 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 08:26 PVG 16:26 LAX 01:26 JFK 04:26
    Do have faith in what you're doing.
    ubao 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