• 请不要在回答技术问题时复制粘贴 AI 生成的内容
KaynWASD
V2EX  ›  程序员

有 hexo+github pages 的一键部署工具吗?傻瓜化一点

  •  
  •   KaynWASD · Feb 3, 2021 · 6045 views
    This topic created in 2104 days ago, the information mentioned may be changed or developed.
    自己去年玩了一段 hexo + github 部署 ,后来吃灰了,发现写文章还挺多小麻烦的
    图床啊 跨终端(比如今天 mac 上写了,明天想在家里的 windows 上写)
    这些问题我自己可以折腾解决,但是如果这一套方法更多人想用(非程序员),就很繁琐且麻烦了

    感觉完全可以有个一键部署工具啊 环境什么的不需要用户操心,只需要保留好 文章的 md 文件和图片 提供 github 权限,整个流程一套搞定就方便多了 要是还能提供自动跨终端同步工具 就更方便 甚至手机都能修改文件内容


    甚至进一步想,有的网盘甚至可以搞个类似于自动生成博客主页的工具,用户只需要把自己的 md 文件丢到某个盘内,自己的个人主页自动就更新出来了


    当然只是 yy 求轻喷
    33 replies  •  2021-02-04 16:34:25 +08:00
    ManjusakaL
    ManjusakaL
    Feb 3, 2021
    1
    直接 GitHub Action 一步到位啊
    KaynWASD
    KaynWASD
    OP
    Feb 3, 2021
    2
    @ManjusakaL 不错 不过还是要研究折腾一下
    KaynWASD
    KaynWASD
    OP
    Feb 3, 2021❤️1
    3
    刚才网上发现了一个 https://github.com/gaoyoubo/hexo-client 这个 类似 gui 的工具

    但是尴尬 在公司电脑我没环境 无法打开
    baoshuo
    baoshuo
    Feb 3, 2021
    4
    把源文件存到一个仓库里,然后用 Github Codespaces 可以远程编辑,里面提供了完整的环境,然后用 Github Actions 自动部署即可。
    wd
    wd
    Feb 3, 2021 via iPhone
    5
    不要弄图。github actions 足够了
    UUZ
    UUZ
    Feb 3, 2021
    6
    Baileys
    Baileys
    Feb 3, 2021
    7
    我用的 travis,还可以,只要本地写好 md 然后在 travis 的服务器上跑好 pages 推给 github,大概有个教程[在这里]( https://baileyswu.github.io/2019/08/hexo-with-travis/)
    caixiaomao
    caixiaomao
    Feb 3, 2021
    8
    有个 git action 提交代码之后会自动部署发布
    damaerguo912
    damaerguo912
    Feb 3, 2021
    9
    docker 环境一键部署: https://github.com/zeusro/docker-hexo
    cco
    cco
    Feb 3, 2021
    10
    github 有个 action,非常简单。
    EvilDevilJin
    EvilDevilJin
    Feb 3, 2021
    12
    一键生成静态博客的,gridea 。
    MWeb 的 md 也能直接转为 HTML 。
    boris93
    boris93
    Feb 3, 2021 via Android
    13
    github actions 生成页面到某个分支或仓库
    然后 Vercel 监听这个分支或仓库,把 pages 部署到 Vercel
    自动化,而且访问速度快
    Qute
    Qute
    Feb 3, 2021
    14
    这个按道理来说 github action 就可以啊,只要你写完 PUSH 就行了,其他的不用干,不过话说感觉 hexo 有点太重了
    Lemeng
    Lemeng
    Feb 3, 2021
    16
    github 算不算傻瓜式
    jessun1990
    jessun1990
    Feb 3, 2021
    17
    我的方案是这样的:博客使用 <github_name>.github.io 项目作为仓库。src 分支作为 markdown 分支,编辑并保存 markdown 文件后,git push 到远端后。github actions 自动将静态博客生成的 html 文件放入 master 分支。这样过几分钟之后,从域名 https://<github_name>.github.io 看到编辑效果了。

    我现在使用 zola ( https://www.getzola.org/) 作为生成工具,简要步骤: https://jessun2017.github.io/use-zola-blog-generator/

    如果是 hugo,参考一下这个文件:

    ```yaml
    # This is a basic workflow to help you get started with Actions

    name: Hugo on Github Pages

    # Controls when the action will run. Triggers the workflow on push or pull request
    # events but only for the master branch
    on:
    push:
    branches: [ src ]

    # A workflow run is made up of one or more jobs that can run sequentially or in parallel
    jobs:
    # This workflow contains a single job called "build"
    build:
    # The type of runner that the job will run on
    runs-on: ubuntu-latest

    # Steps represent a sequence of tasks that will be executed as part of the job
    steps:
    # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
    - uses: actions/checkout@v2
    with:
    submodules: true

    # Runs a single command using the runners shell
    - name: Clean directory ./public/
    run: |
    rm -rf .git/worktrees/public/
    rm -fr ./public/

    - name: Setup hugo
    uses: peaceiris/actions-hugo@v2
    with:
    hugo-version: '0.71.1'

    - name: Build
    run: |
    hugo -b https://jessun2017.github.io


    - name: Deploy
    uses: peaceiris/actions-gh-pages@v3
    with:
    github_token: ${{ secrets.TOKEN }}
    publish_branch: master # default: gh-pages
    ```
    ixx
    ixx
    Feb 3, 2021
    18
    我直接扔 coding 用 coding ide 懒的折腾了
    sparkinglemon
    sparkinglemon
    Feb 3, 2021 via iPhone
    19
    peakviber
    peakviber
    Feb 3, 2021
    20
    coding.net 接近傻瓜式,至少部署不用操心,服务器在香港(也可以选国内,要备案),速度很一般(南京电信 100M )
    https://help.coding.net/docs/pages/practice/hexo.html
    1078503
    1078503
    Feb 3, 2021
    21
    @sparkinglemon 看了这么多,你给的才是他最需要的需求,其它的都不是问题。
    xchaoinfo
    xchaoinfo
    Feb 3, 2021 via Android
    22
    我也是用 hexo github page action
    写完保存 git push 完成
    https://github.com/xchaoinfo.github.io
    EvilDevilJin
    EvilDevilJin
    Feb 3, 2021
    23
    @sparkinglemon 我说怎么打不开呢
    foresty.io => forestry.io
    sparkinglemon
    sparkinglemon
    Feb 4, 2021
    24
    @sparkinglemon 订正自己 https://forestry.io/ 手机回复打错字

    forestry + github action/vercel/cf worker
    auh
    auh
    Feb 4, 2021
    25
    看到你的想法让我想起了几年前我的想法。哈哈哈。可是也就前几天因为忍受不了一直用 leanote 云笔记,才简单搞了一下。
    我说下思路。主要任务就是选择工具和插件。(不到万不得已,不要自己写!!!)
    1. 首先选择本地编辑器:
    看过无数的 md 编辑器,个人最后选择 vscode 作为编辑器使用。主要是方便的插件开发和已有的插件库,能够完全的让你组合你想要的功能。(基本上可玩性和实现的效果范围大增)
    选择一些插件:
    编写和预览:一些插件支持快速编写和预览 markdown
    图片问题:一些插件自动支持复制到 md 的图片转化为 markdown 图片链接,图片自动放到设置的文件件。
    git 自动化问题:一些插件支持 git 自动化,保存自动提交 push
    键位问题:一些插件支持 vim 等自己的键位需求
    编码模板:一些插件支持一些代码模板之类的东西,支持一些博客系统需要的文件头。
    等等
    到此, 完美的实现本地编写需求。图片和文档全部原始保存(满足你的需求),各种操作都打磨的非常流畅,编写,预览,图片,自动上传 github 。

    2. 之后,就是 github workflow 了。
    执行,移动文件夹和修改文件内容的脚本。来适配特殊的静态博客生成器的要求。
    执行,压缩一下图片
    执行,渲染操作,生成静态文件
    执行,仅仅将静态文件推送到 github pages 。可以是本仓库 gh 分支或者另外一个仓库。(另外一个仓库,可以让 md 原始数据和静态数据隔离开,分别设置公开私有)

    3. 最后,就是 git pages 自己设置一下。

    4. 关于不同机器来回迁移问题
    项目文件夹,包含.github .vscode docs img.直接充分的发挥了工作区的作用。任意机器,只要有 vscode,直接 clone 下来。立马所有的环境全部具备。插件环境,配置环境,都添加到工作区。主题,和各种脚本,全部管理起来。包括最终生成 pages 仓库的 CName 。等。做到一个地方,可以修改任意阶段的任何内容。

    这个东西可能大多数人都会。简单参考一下吧。(给出了大多数内容,个别需要配置,一些私人配置也没贴出来)
    https://github.com/fanlushuai/note-with-vscode-github-hugo
    auh
    auh
    Feb 4, 2021
    26
    手机端就不建议玩。没有合适项目管理器。如果有管理器的,大佬们分享一下。
    xchaoinfo
    xchaoinfo
    Feb 4, 2021
    27
    @xchaoinfo #22 我更正自己的地址,https://github.com/xchaoinfo/xchaoinfo.github.io

    同时,我另外的一种方式是,一台云服务器,然后搭建了一个 Jupyter Notebook.
    DiamondYuan
    DiamondYuan
    Feb 4, 2021 via iPhone
    28
    vercel 最合适

    1. 不需要钱
    2. 域名绑定方便 自动 https
    3.部署方便,点点鼠标,2 分钟就好了
    4 持续集成更新代码自动部署
    hyqCrystal
    hyqCrystal
    Feb 4, 2021
    29
    我的做法是 github 建一个分支(hexo-blog-source) 存储源码 本地提交代码 使用 github 上使用 node 环境一键打包发布到主分支 然后刷新页面 再通过 gitee-pages-action@master 插件将打包后的文件 同步到 gitee 这样国内外环境都有了
    优点一目了然:
    缺点:1 、不能使用评论功能 两套一个放 github 一个放 gitee 配置的评论数据不会同步
    hyqCrystal
    hyqCrystal
    Feb 4, 2021
    30
    各位能讨论下你们给出的最佳的 github 加速方案
    jingcoco
    jingcoco
    Feb 4, 2021
    31
    我是用的 ecs 云服务器+python 的 fabric 库 ....
    Sayhey5
    Sayhey5
    Feb 4, 2021 via iPhone
    32
    JunoNin
    JunoNin
    Feb 4, 2021
    33
    hexo d -g 然后 Vercel 自动部署
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1581 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 119ms · UTC 12:28 · PVG 20:28 · LAX 04:28 · JFK 07:28
    ♥ Do have faith in what you're doing.